IB DP CS Topic 1-System Fundamentals Students
IB DP CS Topic 1-System Fundamentals Students
• Think of "context" as the background or setting that surrounds a system. It's the situation in which something exists.
"Implementing a new IT system can happen for various reasons. It might serve a completely new purpose for the organization or
replace an existing system that's no longer efficient, suitable, or up-to-date. The new system aims to reduce errors, enhance
productivity and quality, and cut costs. Developing such systems is a complex, time-consuming process with many stages.“.
"Organizations create new IT systems for important reasons. Sometimes, it's for new tasks, while other times, it replaces old
systems due to reasons like inefficiency, outdatedness, or misfit.
New systems improve quality, productivity, reduce errors, and may even save costs.
Developing them is like a big project, similar to building a new school – it takes time and effort to solve problems and work more
efficiently."
• Inefficiency: Imagine an office using outdated computers that take forever to load files and run software. They decide to implement a
new IT system with faster computers and streamlined software to improve efficiency and save time.
• Not Suitable Anymore: Think of a small clothing store that initially used a basic cash register to ring up sales. As the business grows,
they find the old cash register can't handle the increasing volume of transactions, so they decide to replace it with a modern point-of-
sale (POS) system tailored to their needs.
• Outdated or Redundant: Consider a company using an old, legacy accounting software program. Over the years, it has become
outdated, and there are now more advanced and user-friendly accounting software options available. They decide to switch to a new
system to stay up-to-date.
• Improved Quality and Productivity: Picture a manufacturing plant that relies on manual processes for quality control. They decide to
implement an automated quality control system that can detect defects more accurately and quickly, leading to higher product quality
and productivity.
• Reducing Mistakes: Imagine a hospital that relies on paper-based medical records, which can lead to errors and delays in patient care.
They decide to implement an electronic health records system to reduce mistakes and provide better patient care.
• Lower Costs: Consider a company with a fleet of old, fuel-inefficient vehicles. They decide to invest in a new fleet of energy-efficient
vehicles, which may have a higher upfront cost but will save them money on fuel and maintenance expenses over time.
Breaking down the context using these “when ,where, what, who, why and how" elements helps us understand the reasons behind planning
a new system within an organization.
12/09/2023 BY: Mr. Noureddine Tadjerout 12
1.1 Systems in organizations
Planning and system installation:
1.1.1: Identify the context for which a new system is planned.
Before Creating a New System:
Imagine the systems analyst as a tech detective. They investigate the current system by talking to users, watching how it
works, and checking documents.
Once they have all this info, they evaluate what's good and what needs improvement. Then, they suggest a new system that
should be more productive.
They think about what parts of the old system can still be useful and decide on the new system's hardware and software. They
also consider ethics, like whether the new system might lead to job loss.
For collecting data, they use questionnaires, interviews, observations, current system documents, and user manuals.
Example 2: IPv6
• The internet once used IPv4, but as it expanded, its limitations became clear. So, IPv6 was introduced, allowing
more devices to connect with 128-bit addresses instead of 32-bit. This transition is gradual and should be complete
by 2026.
• Remember, new systems bring benefits and challenges. Consider the switch from IPv4 to IPv6 – it offers more
connections and better security but requires time, money, and IT training. It's like upgrading a game on your
computer – exciting but requires some adjustment.
12/09/2023 BY: Mr. Noureddine Tadjerout 14
1.1 Systems in organizations
Planning and system installation:
1.1.1: Identify the context for which a new system is planned.
Understanding Why New Systems are Created.
Example 3 - Smartphones as IDs: Think about if our school uses students' personal smartphones instead of ID cards for school
tasks. It's like using phones to unlock the doors or manage library checkouts. This is a way of implementing a new IT system
that makes school life more modern and convenient.
Example 4 -Upgrading Student Systems: Imagine our school replaces PowerSchool with a completely new system that
helps with sharing class materials and tracking students' progress. It's like getting a fresh and improved way of
managing student information using technology.
Example 5 - AI Entry System: If our school starts using AI-powered turnstiles that remind people to wear masks when
they enter, that's a new IT system in action. It's like having a smart technology at the entrance to help keep everyone
safe.
Example 6 - Better WiFi Network: Updating our school's WiFi network to make it faster and more reliable is a change.
It's like getting a supercharged internet connection that makes everything online work even better
12/09/2023 BY: Mr. Noureddine Tadjerout 15
1.1 Systems in organizations
Planning and system installation:
1.1.1: Identify the context for which a new system is planned.
Discussion question
Facebook wants to change its look and feel and implement a new social media platform.
The new platform will have entirely different features and functionality.
a) Should one person be in charge of the new design specification or two or more people? Why?
b) Do you think this is a good idea for Facebook? Who should they consider when planning?
Answer: Understanding the context helps ensure that the new system meets the specific needs and goals of the organization.
It prevents the development of a system that doesn't align with organizational objectives.
Example: Imagine a retail company planning to implement a new inventory management system. Understanding the context
involves considering factors like the company's size, the number of stores, and the types of products they sell. If they fail to do
so, they might end up with a system that can't handle their large inventory or product variety.
Question 2: Provide an example of a situation where a new system might be needed in an organization.
Answer: Example: An organization's manual paper-based payroll system is error-prone and time-consuming. They plan to
implement a new automated payroll system to improve accuracy and efficiency.
12/09/2023 BY: Mr. Noureddine Tadjerout 21
1.1 Systems in organizations
Planning and system installation:
1.1.1: Identify the context for which a new system is planned.
Question 3: Explain why it's crucial for an organization to appreciate the extent and limitations of a new system before
implementation. Give an example.
Answer: Appreciating the extent and limitations helps manage expectations. It ensures that the organization understands
what the new system can and cannot do, reducing unrealistic expectations and potential disappointment
Example: If a company plans to implement a new customer relationship management (CRM) system, they should appreciate
its limitations. For instance, the CRM system might not provide all the features they desire, but understanding this in advance
prevents disappointment.
Question 4: What are some organizational issues related to the installation of new systems that should be considered? Give
an example.
Answer: Organizational issues include user roles and responsibilities, training needs, data migration, integration with existing
systems, and potential resistance to change among employees.
Example: When a hospital installs a new electronic health records (EHR) system, they must address organizational issues. This
includes defining who has access to patient records (user roles), training doctors and nurses on the new system, ensuring old
patient data is migrated accurately, and managing potential resistance from staff accustomed to paper records. 22
1.1 Systems in organizations
Planning and system installation:
1.1.1: Identify the context for which a new system is planned.
Question 5:
Why is it essential to define user roles and responsibilities when implementing a new system? Give an example [3]
Answer: Defining user roles ensures that everyone knows their responsibilities within the system. It helps streamline
processes, prevents conflicts, and ensures a smoother transition to the new system.
Example: In a university implementing a new online learning platform, user roles must be defined. Professors, students, and
administrators should have distinct responsibilities. Professors may upload course materials, students access content, and
administrators manage user accounts, ensuring a clear division of tasks.
• Managing people, departments, and organizations through the transition from the old system to the new one.
• Maximizing benefits and minimizing disruption so that stakeholders accept the change.
A proper plan is crucial for the successful change from the old system to the new one. Important factors to consider include
employee training and deciding how the new system will be implemented, whether through Parallel running, pilot running,
direct changeover and phased conversion ( section 1.1.5).
• Implementation Strategy: How will we make the change happen? Will we switch to the new system all at once (direct
changeover), run both systems side by side (parallel running), try it out in smaller parts (pilot projects), or roll it out step by
step (phased implementation)?
• Inadequate Hardware: Sometimes, the old hardware isn't up to the task of running the new system smoothly. For instance, if
you're upgrading to the latest video editing software, your old computer might not have the power to handle it.
• Continuous Business Operations: Often, businesses must keep running smoothly even as they implement a new system. For
example, an online retailer can't afford to shut down its website while upgrading its e-commerce platform.
• Compatibility Issues: The new software may not work well with existing software and data. Think of it as trying to run a
modern smartphone app on an ancient phone with limited capabilities.
• Installation and Configuration: Finally, installing and configuring the new system can be time-consuming and complex, often
requiring someone with specialized knowledge.
Example:
Imagine your school decides to replace the old paper-based grading system with a new digital one. Without a plan, it could be
chaotic. Change management, in this case, would involve training teachers to use the new digital grading system and deciding
whether to implement it for all subjects at once or roll it out gradually, like starting with just one grade level. This thoughtful
approach ensures a smoother transition and helps avoid confusion and disruptions.
Question 2: List three common factors that need to be managed during a system change to ensure its success. Give an
example. [3]
Question 3: Explain why employee training is a critical component of change management during a system implementation.
Give an example. [3]
Question 4: How can effective communication play a crucial role in change management? Give an example. [3]
Question 5: Describe one potential effect on employees if change management is not adequately implemented during a
system change. Give an example. [3]
Now, imagine two businesses with their own unique computer systems. When these businesses merge, it becomes a big
challenge to make their systems work together. Here are some issues that can come up:
• Language Differences: Imagine one business speaks English, and the other speaks French. They need to find a way to
understand each other.
• Using Old Systems: If one business uses an older version of a system, it's like speaking an old, outdated language. They have
to figure out how to connect with the more modern system of the other business.
• Compatibility with Devices: Imagine if you have a laptop that only works in your room, but you need it to work in other
parts of the house. That's similar to making sure employees' laptops can function in different departments after a merger.
• Unit Systems: If one business uses pounds and inches, and the other uses kilograms and centimeters, they need to agree on
which measuring system to use.
So, when different systems need to cooperate, it's a bit like making sure people who speak different languages can understand
each other and work together effectively. Sometimes, when different computer systems meet, they don't get along smoothly.
This can happen when old systems (like legacy systems) or when two businesses merge. Here are some common examples:
• Legacy Systems: Imagine using an old video game console with modern games. They might not work together because the
technology is different. Similarly, old computer systems might not work well with new ones. Another example:Think of trying
to play a classic Nintendo game on a modern PlayStation. The old game isn't designed to work on the new system, so it won't
run smoothly.
• Business Mergers: When two companies join forces, their computer systems might not speak the same "language." It's like if
two people who speak different languages try to have a conversation. Another example:Imagine a company in the USA
merging with a company in Europe. They might use different measurement systems (like using inches and centimeters) or
different software (like using Microsoft and IBM). Getting everything to work together smoothly can be a big challenge, like
making sure everyone speaks the same language during a big international meeting.
12/09/2023 BY: Mr. Noureddine Tadjerout 35
1.1 Systems in organizations
Planning and system installation:
1.1.3: Outline compatibility issues resulting from situations including legacy systems or business mergers.
Exam Questions :
Below Question to make you understand compatibility issues resulting from legacy systems or business mergers in
the context of systems in organizations.
Question 1:
Explain what is meant by "legacy systems" in the context of compatibility issues. Provide an example.
Question 2:
Discuss two common compatibility issues that arise when two businesses merge. Provide examples for each.
Question 3:
How can compatibility issues resulting from legacy systems or business mergers be mitigated or resolved? Provide two
strategies, along with examples.
Client's Hardware:
Imagine you have your own computer at home. You control everything about it, from the software you use to the way it's set
up. This is similar to how some companies have their own computer systems. They manage and control everything themselves,
just like you do with your personal computer.
Now, think of a different scenario. Instead of having your own computer, you use a powerful computer owned by someone
else. This computer is located far away, but you can access it through the internet, just like when you play an online game.
Companies can do something similar, where they don't run their own computer systems but use servers from a software
company. These servers are managed and maintained by the software company, not the client.
Benefits:
• Cost-Efficiency: Organizations can save money on hardware and IT staff because the software company handles maintenance and
updates.
• Expertise: Software companies are experts in managing their systems, which can lead to better performance and reliability.
• Accessibility: Users can access the software from anywhere with an internet connection, promoting flexibility and remote work.
Drawbacks:
• Data Security: Trusting another company with sensitive data can pose security risks.
• Time Zone Challenges: If the server is in a different time zone, maintenance or updates may disrupt the workday for users.
• Time Zone Challenges: If the server is in a different time zone, maintenance or updates may disrupt the workday for users.
12/09/2023 BY: Mr. Noureddine Tadjerout 41
1.1 Systems in organizations
Planning and system installation:
1.1.4: Compare the implementation of systems using a client’s hardware with hosting systems remotely.
Benefits and Drawbacks of SaaS (Software-as-a-Service):
Example of SaaS: One popular example of SaaS is Microsoft 365 (formerly known as Office 365). Instead of installing Microsoft Office
software on individual computers, users can access it online. The software runs on Microsoft's servers, and users can create, edit, and
share documents from anywhere with an internet connection. Microsoft manages the servers, ensures updates, and offers support,
making it a convenient choice for many organizations.
Compare the implementation of systems using a client's hardware with hosting systems remotely. Provide advantages and
disadvantages for each approach.
Question 2:
Discuss the impact of internet connectivity on the implementation of systems using client hardware versus hosting systems
remotely. Provide an example.
Question 3:
Explain the role of scalability in the comparison between using a client's hardware and hosting systems remotely. Provide a
real-world example for each scenario.
Question 4:
Explain the concept of SaaS (Software-as-a-Service) and provide a real-world example of a SaaS application.
1.1 Systems in organizations
Planning and system installation:
1.1.5: Evaluate alternative installation processes.
Direct Changeover: Imagine you buy a new game for your console and stop playing your old one right away. It's the quickest and
cheapest way, but what happens to all your old game progress? Direct Changeover is like that. You immediately switch to the new
system and stop using the old one. If there are issues, it can be a big problem.
Advantages:
• Cost-Effective: Direct changeover is the least expensive method because you don't need to maintain both old and new systems
simultaneously.
• Immediate Readiness: The new system is ready to go as soon as the switch happens. There's no need for a transition period.
Disadvantages:
• Lack of Backup: If the new system encounters issues or fails, there's no backup or fallback option. It's like having only one car, and if
it breaks down, you're stuck without transportation.
12/09/2023 BY: Mr. Noureddine Tadjerout 50
1.1 Systems in organizations
Planning and system installation:
1.1.5: Evaluate alternative installation processes.
Parallel Running: Think of having two game consoles, and you play the same game on both. It's extra work, but if one console
has issues, you still have the other. Parallel Running is like that. You use both the old and new systems at the same time. Once
you're sure the new system works well, you can stop using the old one.
Pros and Cons of Parallel Running: Using Both Old and New Systems Simultaneously
Advantages:
• Data Safety Net: If the new system encounters problems or fails, the old system serves as a reliable backup. It's like having a spare tire in your car in
case one goes flat.
• Training Opportunity: Staff can learn how to use the new system while still relying on the old one. It's like taking driving lessons while keeping your
current driver's license.
• Easy Comparison: You can easily compare the outputs of the new system with the existing one, making it simpler to test and ensure everything works
as intended (planned).
Disadvantages:
• Higher Costs: Running both systems at the same time can be costly. It's like paying for two different streaming services when you only need one.
• Time-Consuming: Operating both systems simultaneously takes more time and effort, which can slow down daily operations. It's similar to trying to
read two books at once—it's possible but not very efficient.
12/09/2023 BY: Mr. Noureddine Tadjerout 51
1.1 Systems in organizations
Planning and system installation:
1.1.5: Evaluate alternative installation processes.
Pilot Running: Testing Before Full Launch
In pilot running, the new system is like a trial run. It's tested with a small group within the organization first. Once everything works
smoothly and any issues are fixed, it's rolled out to everyone.
• Example: Imagine your school wants to introduce a new online homework system. They start by letting a few classes test it out. If
everything goes well and they fix any problems, they make it available to all the students and teachers.
• Pros and Cons of Pilot Running: Testing in One Part Before Full Rollout
Advantages:
• Localized Impact: If the system fails, it only affects one part of the business, like one supermarket in a chain. It's like testing a new
recipe in one kitchen—if it doesn't turn out well, it doesn't ruin the whole meal.
• Cost-Efficient: Pilot running is usually less expensive than parallel running because you're not maintaining two systems
simultaneously.
• Training Opportunity: Staff can get hands-on training in the pilot facility, which helps them learn how to use the new system
effectively.
12/09/2023 BY: Mr. Noureddine Tadjerout 52
1.1 Systems in organizations
Planning and system installation:
1.1.5: Evaluate alternative installation processes.
Pilot Running: Testing Before Full Launch
Disadvantages:
• Pilot Facility Impact: If the system fails during testing, work at the pilot facility can be disrupted, affecting that specific part of
the business.
• Potential Data Loss: If the pilot system fails, there's a risk of data loss, which can impact the information collected during the
testing phase. It's like losing a few ingredients while experimenting with a new recipe.
Pros and Cons of Phased Conversion (Implementation): Replacing the Old System Step by Step.
Advantages:
• Testing Opportunities: Each part of the new system can be thoroughly tested before moving on to the next, reducing the chances of
issues cropping up later. It's like checking each ingredient before adding it to a recipe.
• Learning stages: Staff can learn to use the new system gradually, which can be more manageable than trying to learn everything all
at once. It's similar to learning new dance moves one step at a time.
Disadvantages:
• Lack of Backup: If a part of the new system fails during implementation, there may not be a backup to rely on, which can disrupt
operations.
• Complexity Challenge: For very complex systems, introducing them in parts can be difficult to coordinate and manage effectively.
It's like trying to assemble a complicated puzzle piece by piece.
12/09/2023 BY: Mr. Noureddine Tadjerout 54
1.1 Systems in organizations
Planning and system installation:
1.1.5: Evaluate alternative installation processes.
Discuss the advantages and disadvantages of parallel running as an installation process. Provide a real-world scenario where
parallel running would be beneficial.
Question 4:
Evaluate the advantages and disadvantages of phased implementation. Provide a real-world scenario where phased
implementation is a suitable approach.
56
BY: Mr. Noureddine Tadjerout
1.1 Systems in organizations
Planning and system installation:
1.1.6: Discuss problems that may arise as a part of data migration.
Data migration = moving data
Data migration can be as easy as copying a file from one device to another, like using a USB flash drive. But it can also get quite
complicated when huge databases need to share information across countries, even when dealing with different time zones.
When moving data from an old system to a new one, several issues can arise:
Incompatible File Formats: Imagine trying to open a file with a brand-new software that doesn't recognize the format. It's like
trying to play a new video game on an old console that doesn't support it.
61
1.1 Systems in organizations
Planning and system installation:
1.1.6: Discuss problems that may arise as a part of data migration.
Incompatible or Obsolete Data Structures: Think of data structures as the organization of information. If the new system
doesn't understand how the old system organized data, it's like trying to read a book in a language you don't understand.
62
1.1 Systems in organizations
Planning and system installation:
1.1.6: Discuss problems that may arise as a part of data migration.
Validation Rule Changes: If the new system has different rules for what's acceptable data, your old data might not fit. It's like
trying to use an expired ticket to enter an event.
63
1.1 Systems in organizations
Planning and system installation:
1.1.6: Discuss problems that may arise as a part of data migration.
Transfer Errors: Errors can occur during data transfer, like missing pages in a book when you're photocopying it.
64
1.1 Systems in organizations
Planning and system installation:
1.1.6: Discuss problems that may arise as a part of data migration.
Changed Character Sets: If characters in your data change, it's like letters in a word suddenly appearing differently, leading to
misinterpretation.
Changed Units: If the new system interprets measurements differently, like using Celsius instead of Fahrenheit for
temperature, it can lead to misunderstandings.
65
1.1 Systems in organizations
Planning and system installation:
1.1.6: Discuss problems that may arise as a part of data migration.
Exams Questions and Answers
Question 1:
Discuss the potential problems associated with incompatible file formats during data migration. Provide an example to illustrate
this issue.
Question 2:
Explain how changes in character sets can lead to misinterpretation of data during migration. Provide a real-world scenario
where this issue can occur.
Question 3:
Describe the potential problems related to data loss when transitioning from legacy systems to modern systems during
migration. Provide an example of a situation where data loss can occur.
Question 4:
Discuss how validation rule changes in a new system can render old data unusable during data migration. Provide an example to
illustrate this challenge.
Question 5:
Describe what transfer errors are in the context of data migration and provide two examples of transfer errors that might occur
66
during a migration process.
1.1 Systems in organizations
Planning and system installation:
1.1.7: Suggest various types of testing.
Click the link below to watch different type of testing:
https://www.youtube.com/watch?v=YaXJeUkBe4Y
72
1.1 Systems in organizations
Planning and system installation:
1.1.7: Suggest various types of testing.
Here are various types of testing:
Static Testing and Dynamic Testing are two fundamental approaches to software testing:
• Static Testing: is a software testing technique that doesn't involve code execution. It's about reviewing and analyzing the software or its
documentation to find defects without actually running the program. Examples: Static testing methods include code reviews, inspections,
walkthroughs, and requirements analysis.
Benefits of Static Testing : It helps identify issues early in the development process, making it cost-effective and efficient. It's excellent for finding design
flaws, coding errors, and inconsistencies in requirements.
Limitations: Static testing cannot detect runtime errors or issues related to the software's actual execution.
• Dynamic Testing: involves executing the software and evaluating its behavior while it's running. It aims to find defects related to the program's
runtime behavior. Examples: Dynamic testing methods include unit testing, integration testing, system testing, regression testing, and performance
testing.
• Benefits: Dynamic testing uncovers runtime errors, functional issues, and performance bottlenecks. It verifies that the software operates as expected
under various conditions.
• Limitations: Dynamic testing typically occurs later in the development cycle and may not catch all design or requirement issues.
In summary, static testing focuses on inspecting software artifacts (are typically created during the software development process) without execution,
while dynamic testing evaluates the software's behavior during execution. Both approaches are essential for comprehensive software quality assurance,
with static testing emphasizing early defect detection and dynamic testing addressing runtime behavior and functionality. 73
1.1 Systems in organizations
Planning and system installation:
1.1.7: Suggest various types of testing.
Click the link blow to watch difference between Black-box testing, and White-box testing:
https://www.youtube.com/watch?v=ucmIS3z7mqc
• Black-box Testing: (also known as functional testing): is a testing approach that treats the software as a "black box." Testers
examine the software's functionality without knowledge of its internal code or structure. They focus on inputs, outputs, and
how the software behaves based on various inputs. Examples: Functional testing, acceptance testing, and system testing are
common black-box testing methods.
• Benefits: Black-box testing is excellent for evaluating the software's behavior from a user's perspective. Testers can identify
issues related to functionality, usability, and compatibility.
• Limitations: Testers might not discover certain types of defects, such as those related to specific code paths or internal data
structures. It can be less effective in finding vulnerabilities or security issues.
• Benefits: White-box testing is effective at uncovering defects related to code quality, control flow, and internal data
structures. It's useful for improving code reliability and security.
• Limitations: White-box testing may not fully address functional or behavioral aspects of the software. It can be time-
consuming, especially for large and complex systems.
In summary, black-box testing assesses the software's functionality from an external perspective, while white-box testing
delves into the internal code and logic. Both approaches are valuable for comprehensive software testing, with black-box
testing emphasizing user-focused functionality and white-box testing addressing code quality and structure. Depending on the
testing goals and objectives, organizations may use one or both of these methods as part of their quality assurance processes.
77
12/09/2023 BY: Mr. Noureddine Tadjerout
1.1 Systems in organizations
Planning and system installation:
1.1.7: Suggest various types of testing.
• Alpha Testing: performed by testers who are usually internal employees of the organization. Alpha testing performed at
developer's site. Alpha Testing: It's done by internal employees, like company workers testing a new app before anyone else.
For example, employees trying out a new company software at the office.
• Beta Testing: Beta Testing: Clients or end users outside the organization test the product. For example, gamers trying a new
video game before its release. To outline what is meant by Beta testing is the phase in software development where a select
group of external users evaluates a software product before its official release to identify and address issues and gather
feedback.
• User Acceptance Testing (UAT): Letting end-users test the software to ensure it meets their needs. User Acceptance Testing
(UAT): When real users try out the software to check if it works the way they want. For example, students testing a new
classroom app to see if it's easy to use,
Question 1: Describe what Black-Box Testing is and provide an example scenario where Black-Box Testing would be applicable.
Question 2: Explain the concept of White-Box Testing and provide a real-world example where White-Box Testing would be
beneficial.
Question 3: Define the term "Static Testing" in software testing and provide an example scenario where Static Testing can be
applied.
Question 4: What is Dynamic Testing in software testing and give an example of a situation where Dynamic Testing is essential.
Question 5: Explain what Beta Testing is and provide an example of a product or service that commonly undergoes Beta
Testing.
Question 6: Describe what Automated Testing is and provide an example of a scenario where Automated Testing would be
advantageous in a software development project.
• Guidance: It provides users with a reference guide, ensuring they can effectively utilize a system very easy.
• Clarity: Clear instructions help users discover and utilize less obvious features.
In essence, user documentation ensures that users can make the most of a system by offering clear guidance and uncovering
hidden functionalities.
Users are not developers. Users are like everyday drivers, not car designers. Good user documentation acts as their GPS. Simpler
documentation speeds up system adoption, reducing training needs. Users are non-technical people; they only need to know
how to use the system. Therefore, the user documentation does not involve detailed explanations of how the system works.
• A well-made user documentation guides the user through using the system and thus increases productivity.
• If the user documentation is simple, system implementation can happen faster because users require less training to learn how
to use the new system.
Example: Imagine getting a new smartphone with clear instructions on how to use its features. It makes things easier, right?
Provide an example of how user documentation can facilitate the adoption of a new system.
Question 4:
Discuss the role of user documentation in reducing training costs during the implementation of a new computer system.
• Advantage: Accessible while using the program, offering general instructions and major error solutions.
• Disadvantage: Only available after system installation, limited to general errors, lacks search functionality.
• Example: Imagine you've installed a new graphic design software, and when you encounter a problem while editing an image, you click on the
"Help" button within the software. A window pops up with detailed instructions and troubleshooting tips.
• Advantage: Extensive, continuously updated, offers live support, and has search capabilities.
• Disadvantage: Requires an internet connection, live support can be challenging for tech novices. – Live support does not work quite well with
users unfamiliar with computers when they have to explain their problem (“I clicked 'that' button and then something happened!”)
• Example: Picture signing up for a social media platform and needing assistance with account settings. You visit their website and find an
extensive support section with FAQs, articles, and even a live chat option for real-time help.
• Advantage: Can be read beforehand (can be read through by users before starting to work with the new system) , provides installation
assistance, always available.
• Disadvantage: Prone to being lost (Can be lost / misplaced), often limited in content, may not receive regular updates.
• Example: When you purchase a new smartphone, it comes with a printed booklet in the box. This booklet provides step-by-step instructions
on setting up your phone, using its features, and troubleshooting common issues.
Training is important!
• Training end-users in using a new system is very important as productivity greatly depend on how familiar they are with a
system.
• Self-instruction
• Formal classes
• Remote/Online training
Advantage:
• Cost-Effective: Users can learn at their own pace without the need for expensive instructors.
Disadvantage:
• Not Suitable for Everyone: Not ideal for those unfamiliar with technology or who require structured guidance.
Example: Scenario: Jane is a seasoned computer user and needs to learn how to use a new software program at work.
• Approach: She reads the software manual and explores the program on her own.
Advantage:
• Effective for Large Groups: Useful for training a large number of staff simultaneously.
Disadvantage:
• Limited Personalization: Instructors may have limited time to address individual questions or needs.
Example: Scenario: A company introduces a new accounting software for its employees.
• Approach: They organize group training sessions where an instructor teaches employees how to use the software.
Advantage:
• Quality Interaction: Allows for direct interaction with instructors, even when physically apart.
Disadvantage:
• High Cost: Can be expensive compared to other training methods due to personalized instruction.
Example: Scenario: A graphic design company hires a remote instructor to train a new designer.
• Approach: The instructor conducts personalized training sessions via video conferencing.
Question 2:
Describe formal classes as a method of user training. What are the benefits and challenges associated with formal
classes?
Question 3:
Explain remote/online/personal training as a method of user training. What makes this method effective, and what
are its drawbacks?
• Power Outage During Storm: When severe weather disrupts electricity, computers may shut down unexpectedly, potentially
leading to data loss. Example: Imagine you're working on an important document, and suddenly, a severe thunderstorm
causes a power outage. You hadn't saved your work, and as a result, the unsaved changes are lost when your computer shuts
down.
• Defective Hard Drives: Faulty hardware components, particularly hard drives, can result in data corruption or loss. Example:
Over time, the hard drive in your laptop develops a physical defect, causing it to fail. As a result, you're unable to access the
files stored on that drive
• System Crashes: Software or hardware failures, like system crashes, can cause data to become inaccessible or corrupted.
Example: While working on a complex project, your computer experiences a sudden system crash due to a software bug.
When you reboot your computer, you find that the project file you were working on is corrupted and unreadable.
• Malicious Activities: Deliberate actions, whether by employees or external intruders, such as unauthorized access, hacking, or
data deletion, can lead to data loss. Example: An employee with access to sensitive company data decides to steal and delete
important financial records. As a result, the company experiences data loss, affecting its financial stability and operations.
12/09/2023 BY: Mr. Noureddine Tadjerout 113
1.1 Systems in organizations
System backup:
1.1.12: Outline the consequences of data loss in a specified situation.
• Blocked Credit Card: You can't use your credit card due to unexplained issues.
• No Access: Incorrect passwords prevent you from logging in or accessing your accounts.
• Credit Rating and Medical Treatment: Incorrect birth dates can affect your credit rating and medical treatment.
• Email Mix-Up: Wrong email addresses result in receiving someone else's emails and missing your own.
• Lost Purchase Orders: Missing purchase orders can lead to undelivered items and disruptions in business operations.
• Example: In a busy hospital where many doctors and nurses don't know patients personally, if medical records are lost, it can
lead to administering the wrong treatment, especially when a patient can't communicate their medical history.
• Example: If a hotel reservation is cancelled without the traveller’s knowledge, they may arrive at their destination only to find
they have no place to stay. This can disrupt their entire trip.
• Failover system
• Redundancy
• Removable media
• Offsite/online storage
• Example: Imagine a website that uses a failover system. If the primary server experiences a hardware failure, the website
automatically switches to a backup server, ensuring uninterrupted access for users.
Redundancy: Redundancy involves creating duplicate components or systems to provide backup in case of failure. Redundant
systems can include mirrored hard drives, backup power supplies, or redundant network connections. In the event of a failure,
the redundant component takes over, preventing data loss. For instance, critical data can be stored on multiple servers
simultaneously to ensure availability.
• Example: In a home computer setup, you can have redundant data storage by using mirrored hard drives (RAID 1= Redundant
Array of Independent Disks Mode 1) A popular disk or solid state drive (SSD) subsystem that increases safety by writing the
same data on two drives). This means that if one hard drive fails, your data is still intact on the other drive.
• Example: You regularly back up your personal photos and documents to an external hard drive. If your computer crashes, you
can restore your files from the external drive.
Offsite Storage: Offsite storage involves keeping backup copies of data at a location separate from the primary data center or
office. This protects data from physical disasters like fires, floods, or theft. Companies often use secure offsite data storage
facilities or cloud-based solutions to store critical data offsite. For instance, a law firm may store legal documents and case files in
a secure cloud-based storage service.
• Example: A small business sends daily backups of critical financial data to an offsite storage facility. In the event of a fire at the
office, the financial data remains safe and accessible from the offsite location.
• Example: You use a cloud-based file storage service like Google Drive to store your important work files. Even if your computer
malfunctions, you can access those files from any device with an internet connection.
Regular Data Backups: Regularly scheduled data backups are essential for preventing data loss. Automated backup solutions can
ensure that data is consistently copied and stored securely. Examples include setting up nightly backups of a company's email
servers or customer databases.
• Example: A school's computer lab automatically backs up all student assignments and projects to a central server every night.
This ensures that if a student accidentally deletes a file, it can be recovered from the backup.
• In software development, a product release is sometimes done with a beta version so that core developers/users can assist
with debugging and feedback prior to the release of the actual software.
• Plan regular release cycles for software updates, such as monthly or quarterly. For example, a mobile app might release new
features and bug fixes every month.
• Scheduled Updates: Some organizations or companies prefer to schedule updates during non-business hours or low-traffic
times to minimize disruption. For example, a company might schedule software updates for all computers every Saturday
night.
• when an application or system achieves a new version. This usually requires manual installation and makes large changes and
improvement - for example, going from Windows 7 to Windows 8.
• Automatic Updates: Many software applications, operating systems, and even antivirus programs offer automatic updates. These updates are
downloaded and installed automatically, often in the background, without requiring user intervention. They help keep software secure and up-to-date.
Example: Many modern operating systems, like Windows and macOS, have automatic update features enabled by default. When new security patches
or software updates are released, the system automatically downloads and installs them without user intervention.
• Manual Update: In cases where automatic updates may cause compatibility issues or require careful testing, users or IT administrators may choose to
manually initiate updates. This allows for better control over when updates are applied.
• Example: Mobile apps often require manual updates from users. When a new version of an app is available, users must go to the app store (e.g., Apple
App Store or Google Play Store), search for the app, and then choose to update it by tapping a button. This process requires user action and doesn't
happen automatically.
• Identify and apply specific patches to address vulnerabilities. Example: A critical security patch is deployed to fix a known security flaw
in an operating system.
• Patches are often temporary fixes between full releases of a software package.
• Continuous delivery
Continuous delivery
• Continuous delivery is a software engineering approach in which teams produce software in short cycles, ensuring that
• It aims at building, testing, and releasing software with greater speed and frequency.
• The approach helps reduce the cost, time, and risk of delivering changes by allowing for more incremental updates to
applications in production.
• Agile software development describes an approach to software development under which requirements and
solutions evolve through the collaborative effort of self organizing and cross-functional teams and their customers/end users.
• It advocates adaptive planning, evolutionary development, early delivery, and continual improvement, and it encourages rapid
and flexible response to change.
• DevOps is a software engineering culture and practice that aims at unifying software development (Dev) and software
operation (Ops).
• The main characteristic of the DevOps movement is to strongly advocate automation and monitoring at all steps of software
construction, from integration, testing, releasing to deployment and infrastructure management.
• DevOps aims at shorter development cycles, increased deployment frequency, and more dependable releases, in close
alignment with business objectives
Client:
A client is a computer or device that requests and uses services or resources
provided by another computer, known as a server, over a network. Clients can be
individuals' devices like laptops, smartphones, or desktop computers.
• For example, when you use a web browser on your computer or smartphone to
access a website like Wikipedia, your device acts as a client. It sends a request
to Wikipedia's servers to retrieve and display the web pages you want to see.
Advantages:
• Enables the collection of highly detailed information.
• Provides an opportunity to inquire about user preferences and dislikes within the system.
Disadvantages:
• Time-consuming process.
Advantages:
• Offers the opportunity to collect impartial (non-discriminatory), first-hand (direct) information.
Disadvantage:
• Sometimes, individuals may alter (change) their usual behavior when they are aware of being observed.
Advantages:
• Detailed information about the present system can be gathered
• It can be seen where the old system has problems
Disadvantages:
• Time consuming
• Just looking at the forms/outputs may be confusing
Iteration
The importance of iteration during the design process lies in its ability to refine and improve a design. Iteration
allows designers to revisit and revise their ideas, addressing issues, incorporating feedback, and making
enhancements. It helps in uncovering unforeseen challenges, testing different solutions, and ultimately arriving at
a more effective and well-thought-out design. Without iteration, a design may remain stagnant or fail to meet
user requirements and expectations.