0% found this document useful (0 votes)
12 views18 pages

Unit 4 Handout

The document outlines essential processes for system deployment, user training, change management, documentation, maintenance, support, quality assurance, testing methodologies, project management, and system security. It emphasizes the importance of thorough preparation, execution, and ongoing monitoring to ensure successful software delivery and user adoption. Best practices and methodologies are provided to enhance efficiency, reduce risks, and improve overall system performance.

Uploaded by

danieletimu9
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views18 pages

Unit 4 Handout

The document outlines essential processes for system deployment, user training, change management, documentation, maintenance, support, quality assurance, testing methodologies, project management, and system security. It emphasizes the importance of thorough preparation, execution, and ongoing monitoring to ensure successful software delivery and user adoption. Best practices and methodologies are provided to enhance efficiency, reduce risks, and improve overall system performance.

Uploaded by

danieletimu9
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 18

System Deployment and Maintenance

System deployment is when the final product of a software project is delivered to users so they
can start using it. It includes setting up the system, configuring it, and releasing it in a live
environment. A good deployment process ensures the software works well, is easy to access, and
can be maintained.

Steps in the System Deployment Process

1. Pre-Deployment Preparation:
o Set Up Environment: Make sure servers, databases, and other tools are ready.
o Backups: Save a copy of the current system in case something goes wrong.
o Configurations: Adjust settings for databases, networks, and security.
o Testing: Test the system thoroughly in a test environment.
o Documentation: Write down how to install and configure the system.
2. Planning the Deployment:
o Schedule Deployment: Choose a time with the least impact on users, like late at
night.
o Organize Resources: Assign roles to team members, like developers and support
staff.
o Checklist: Make a step-by-step list of actions to avoid missing anything.
3. Executing the Deployment:
o Install the Software: Put the new system on the live servers.
o Database Migration: Update the database to match the new version.
o Apply Configurations: Adjust settings so the system runs smoothly in the live
environment.
o Go Live: Allow users to access the system.
o Smoke Test: Quickly check the system to ensure there are no major issues.
4. Post-Deployment Activities:
o Monitor the System: Keep an eye on performance, security, and user feedback.
o Fix Bugs: Address any issues users or the team identify.
o User Support: Provide help or training to users as they adapt.
o Performance Tuning: Make tweaks to improve speed and efficiency.
o Test Again: Run final tests to confirm everything is working well.
o
5. Review and Improve:
o Assess Success: Check if the deployment went as planned.
o Gather Feedback: Ask users for opinions on the new system.
o Learn and Improve: Note what worked and what didn’t for future deployments.

Deployment Models:

1. Blue-Green Deployment: Use two environments (Blue = current, Green = new), test in
Green, then switch users if successful. Easy rollback if needed.
2. Canary Deployment: Release to a small group, expand if no issues arise. Reduces risk.
3. Rolling Deployment: Update in phases, maintaining system availability and minimizing
downtime.
4. Shadow Deployment: Run the new version alongside the current, using real traffic for
testing without affecting users.

Best Practices:

1. Automate the process to reduce errors.


2. Backup important data before changes.
3. Minimize downtime by deploying during off-peak times.
4. Test everything before release.
5. Communicate clearly with stakeholders.
6. Have a backup plan for quick recovery if needed.

Conclusion

System deployment is a critical step in delivering software. With good preparation, careful
execution, and ongoing monitoring, deployments can be smooth and successful, ensuring users
have a reliable and effective system.

User Training and Change Management

These processes are essential to help users adopt new systems smoothly. They ensure users
understand how to work with the system and that organizational workflows adjust effectively to
the changes.
1. User Training

Training equips users with the skills to use a new system confidently and effectively, reducing
errors and improving productivity.

Why is User Training Important?

 Better Productivity: Helps users quickly adapt to the system and work more efficiently.
 Higher Adoption Rates: Reduces resistance by helping users understand the system’s
benefits.
 Fewer Support Requests: Well-trained users need less help, reducing pressure on
support teams.
 Improved System Usage: Encourages users to explore and use all system features fully.

Types of User Training

1. Instructor-Led Training (ILT): Classroom-style, hands-on training sessions.


2. E-learning: Online, self-paced courses great for flexibility.
3. On-the-Job Training: Learning while using the system for real tasks.
4. Guides and Resources: Manuals, FAQs, and interactive tools for self-study.

Steps in User Training

1. Identify Needs: Determine what each group of users needs to know.


2. Design Training: Create relevant content tailored to user roles.
3. Deliver Training: Use a mix of methods like workshops, e-learning, or on-the-job
coaching.
4. Get Feedback: Evaluate the training’s effectiveness and improve as needed.
5. Ongoing Support: Provide follow-up resources, refresher sessions, and helpdesk
support.

2. Change Management

This process helps organizations adapt smoothly to new systems or workflows by addressing
concerns and ensuring changes are well-integrated.
Why is Change Management Important?

 Reduces Resistance: Addresses concerns to encourage acceptance.


 Smooth Transitions: Ensures resources and support are in place for users.
 Aligned Goals: Helps everyone understand the purpose of the change.
 Minimized Disruption: Keeps the organization productive during changes.

Key Principles of Change Management

1. Strong Leadership: Leaders must support and promote the change.


2. Engage Stakeholders: Involve users and decision-makers early in the process.
3. Clear Communication: Explain why the change is happening and its benefits.
4. Provide Training and Resources: Support users with training and tools.
5. Adapt and Monitor: Track progress and adjust strategies as needed.

Strategies for Managing Change

 Involve key stakeholders early to build support.


 Communicate regularly to reduce uncertainty.
 Address resistance with empathy and solutions.
 Provide continuous support during the transition.
 Create a culture of openness and collaboration.

In conclusion, User training and change management are vital for ensuring the success of new
systems. By helping users adapt and addressing their needs, organizations can achieve smoother
transitions, higher productivity, and long-term satisfaction.

System Documentation and User Manuals

What Are They?

 System Documentation: For developers and IT teams. Explains how the software works,
including its design, code, and setup.
 User Manuals: For everyday users. Simple instructions on how to use the software
effectively.
1. System Documentation: It helps developers maintain, update, and troubleshoot the system.

Types of System Documentation

1. Architectural Docs: Shows the system’s design with diagrams.


2. Design Docs: Explains how the software is structured, including data and algorithms.
3. Code Docs: Explains the code with comments and examples.
4. API Docs: Guides developers on using system APIs with examples.
5. Database Docs: Describes the database structure.
6. Configuration Docs: Lists system settings for setup.
7. Testing Docs: Details test plans, cases, and results.
8. Deployment Docs: Instructions for installing and running the software.

Why It’s Important:

 It eases maintenance and troubleshooting.


 It speeds up onboarding for new team members.
 It helps scale or improve the system over time.

2. User Manuals: It helps users understand and operate the software.

Key Components:

1. Introduction: Overview of the software and features.


2. Installation Guide: Step-by-step instructions to set it up.
3. Getting Started: Basic instructions to begin using it.
4. Detailed Guide: Step-by-step tasks organized by function.
5. Troubleshooting: Common errors and solutions.
6. FAQs: Answers to frequent questions.
7. Glossary: Definitions of technical terms.

Best Practices:

 Use simple, clear language.


 Add screenshots or diagrams for clarity.
 Organize logically (start with basics, then advanced features).
 Update as the software evolves.
System Maintenance and Support

What Are They?

 System Maintenance: Keeps the software functional, secure, and up-to-date.


 System Support: Provides help to users, ensuring they can use the software effectively.

1. System Maintenance

Types of System Maintenance

1. Corrective: Fixes bugs and errors.


2. Adaptive: Adjusts to new environments (e.g., updated browsers or hardware).
3. Perfective: Improves performance or adds features.
4. Preventive: Detects and fixes issues before they cause problems.

Why It’s Important:

 Ensures smooth operation and security.


 Adapts to changing user needs and technology.
 Extends the software’s lifespan.

Best Practices:

 Schedule updates and security checks.


 Monitor performance regularly.
 Keep a record of maintenance activities.
 Collect user feedback to prioritize improvements.

2. System Support

Types of System Support

1. Help Desk Support: Answers basic user queries.


2. Technical Support: Fixes complex technical issues.
3. Customer Support: Provides general assistance and training.
4. Onsite Support: Direct help at the user’s location.
5. Remote Support: Solves problems remotely using tools like remote desktop.
Why It’s Important:

 Reduces downtime and frustration.


 Improves user satisfaction and system adoption.
 Helps identify recurring issues for improvement.

Best Practices:

 Offer multiple support options (e.g., chat, email, FAQs).


 Set clear response times.
 Track support requests to identify trends.
 Train support staff on system updates.

Conclusion: Good documentation, maintenance, and support ensure smooth software operations,
happy users, and long-term success.

Quality Assurance (QA) Principles and Practices

QA ensures that products meet quality standards by identifying and preventing defects
throughout the development process.

Key Principles:

1. Customer Focus: Meet customer expectations by incorporating feedback throughout


development.
2. Prevention Over Detection: Identify issues early with standards and proactive reviews.
3. Stakeholder Involvement: Ensure collaboration among developers, testers, and users.
4. Continuous Improvement: Use feedback to refine processes and products.
5. Data-Driven Decisions: Base improvements on test results and defect metrics.
6. Process Standardization: Follow consistent procedures for reliable outcomes.

Key QA Practices:

1. Requirements Analysis: Clarify and review requirements to avoid defects.


2. Test Planning: Create structured plans covering objectives, scope, and schedules.
3. Test Design: Develop detailed test cases for all scenarios.
4. Static Testing: Identify early issues through code reviews and walkthroughs.
5. Dynamic Testing: Validate functionality through unit, integration, system, and
acceptance testing.
6. Regression Testing: Ensure updates don’t disrupt existing features.
7. Test Automation: Save time and improve accuracy using tools like Selenium.
8. Performance Testing: Assess load, stress, and scalability.
9. Security Testing: Protect against vulnerabilities with penetration tests.
10. Usability Testing: Improve user experience with feedback from real users.
11. Post-Release Monitoring: Track performance and resolve issues after launch.

Why QA is Important:

 Ensures customer satisfaction.


 Saves costs by detecting defects early.
 Minimizes risks like failures or security breaches.
 Improves product stability and reliability.
 Encourages continuous learning and improvement.

Testing Methodologies and Metrics

Testing ensures that software functions correctly and meets requirements. Metrics measure
testing effectiveness.

Testing Methodologies:

1. Black Box Testing: Focuses on functionality without knowing internal code.


o Types: Functional, Acceptance, and Usability Testing.
2. White Box Testing: Tests internal code and logic.
o Types: Unit, Integration, and Code Coverage Testing.
3. Gray Box Testing: Combines Black Box and White Box approaches.
4. Manual Testing: Performed by testers to identify usability or exploratory issues.
5. Automated Testing: Uses tools to execute repetitive tests efficiently.
6. Exploratory Testing: Tests without predefined cases to uncover hidden issues.
7. Regression Testing: Ensures updates don’t break existing features.
8. Performance Testing: Evaluates behavior under different loads (e.g., stress and
scalability tests).
9. Security Testing: Identifies vulnerabilities to protect against threats.
10. User Acceptance Testing (UAT): Confirms the system meets business requirements.

Testing Metrics:

1. Defect Density: Defects per unit of code.


2. Test Coverage: Percentage of code or features tested.
3. Test Case Effectiveness: Percentage of tests that identify defects.
4. Defect Resolution Time: Average time to fix defects.
5. Defect Leakage: Defects missed in earlier stages.
6. Test Execution Progress: Percentage of test cases executed.
7. Pass Rate: Percentage of tests passed.
8. Defect Reopen Rate: Percentage of fixed defects reopened due to insufficient resolution.
9. Test Cost: Total costs of testing activities.

Why Metrics Matter:

 Identify areas that need improvement.


 Track progress and performance.
 Ensure effective use of resources.

In Conclusion: Quality Assurance and Testing are critical to creating reliable, user-friendly
software. By applying the right practices and metrics, teams can deliver high-quality products
that meet customer needs efficiently and consistently.

Project Management

Project management is about organizing and guiding resources to achieve specific goals within a
set timeframe, budget, and quality standard. Its main goal is to deliver successful outcomes while
meeting stakeholders' expectations. It involves managing the entire project lifecycle: Initiation,
Planning, Execution, Monitoring, and Closure.
Key Elements of Project Management

1. Scope: Defines what is included and excluded in the project.


o Ensures clear deliverables and objectives.
2. Time Management: Plans tasks, sets deadlines, and monitors progress.
o Goal: Complete the project on time.
3. Cost Management: Estimates, allocates, and controls the budget.
o Goal: Stay within financial limits.
4. Quality Management: Ensures deliverables meet agreed standards.
o Goal: Satisfy stakeholders.
5. Risk Management: Identifies and mitigates potential challenges.
o Goal: Minimize disruptions.
6. Communication Management: Shares information effectively among all stakeholders.
o Goal: Maintain alignment and avoid misunderstandings.
7. Resource Management: Allocates and monitors resources (people, materials, budget).
o Goal: Use resources efficiently.

Project Management Phases

1. Initiation: Define the project’s purpose, objectives, and stakeholders.


o Output: Project charter or proposal.
2. Planning: Create detailed plans for tasks, timelines, costs, and risks.
o Output: Roadmap for project completion.
3. Execution: Carry out the tasks and coordinate resources.
o Output: Deliverables according to the plan.
4. Monitoring and Controlling: Track performance and adjust as needed.
o Output: Stay on schedule and budget.
5. Closure: Finalize deliverables, release resources, and document lessons learned.
o Output: Formal project completion.

Project Management Methodologies


1. Waterfall: Sequential and phase-based.
o Best for: Fixed-scope projects.
2. Agile: Iterative and flexible.
o Best for: Evolving requirements.
3. Scrum: Agile framework with short sprints and daily updates.
o Best for: Software projects.
4. Kanban: Visual task management with continuous workflow.
o Best for: Managing ongoing tasks.
5. PRINCE2: Structured, process-driven methodology.
o Best for: Highly regulated projects.

Tools for Project Management

1. Microsoft Project: Scheduling, budgeting, and tracking.


2. Trello: Visual task management using Kanban boards.
3. Jira: Ideal for Agile and Scrum projects.
4. Asana: Task tracking and team collaboration.
5. Basecamp: Simple communication and project tracking.

Project Planning, Scheduling, and Resource Management

1. Project Planning: Establishes objectives, scope, and risks.


o Includes SMART goals, milestones, and risk mitigation strategies.
2. Scheduling: Creates a timeline for tasks.
o Tools: Gantt charts, Critical Path Method (CPM), and PERT.
3. Resource Management: Allocates resources effectively.
o Techniques: Resource leveling and smoothing.

Conclusion: Project management ensures that goals are met efficiently within constraints like
time, budget, and scope. By applying proper techniques, tools, and methodologies, project
managers can deliver successful outcomes while addressing challenges effectively.

System Security Principles and Threats


System Security Overview

System security protects information, systems, and networks from unauthorized access,
modification, or destruction. The goal is to ensure confidentiality, integrity, and availability
(CIA) of data.

1. Key System Security Principles

1. Confidentiality: This is a principle whereby only authorized users can access


information.
o Techniques:
 Encryption: Encode data to keep it secure.
 Access Control: Restrict access to sensitive data.
 Authentication: Verify user identity.
2. Integrity: This is a principle which ensures that data is accurate and unaltered unless
authorized.
o Techniques:
 Hashing: Detect data changes using unique codes.
 Version Control: Keep track of data edits.
3. Availability: This is a principle whereby data and systems are accessible when needed.
o Techniques:
 Backups: Maintain copies of critical data.
 Load Balancing: Spread traffic to prevent system overload.
4. Authentication: Verifying the identity of users or devices.
o Examples:
 Passwords, biometrics (fingerprints), multi-factor authentication (MFA).
5. Authorization: This is a principle for granting access only to users with proper
permissions.
o Techniques: Role-Based Access Control (RBAC).
6. Non-Repudiation: Ensuring actions or transactions cannot be denied.
o Example: Use digital signatures to verify actions.
7. Accountability: Ensuring users are responsible for their actions.
o Technique: Keep audit logs of activities
2. Common System Security Threats

1. Malware: This is software designed to harm systems.


o Examples:
 Viruses: Self-replicating programs.
 Ransomware: Locks data until a ransom is paid.
2. Phishing: This is where the users are tricked into sharing sensitive information (e.g., fake
emails).
3. Denial of Service (DoS): This is the overloading a system to make it unavailable.
4. Man-in-the-Middle (MitM): This is the interception of communication between two
parties to steal data.
5. SQL Injection: Injecting malicious code into databases to steal or manipulate data.
6. Insider Threats: These are risks posed by employees or contractors (intentional or
accidental).
7. Password Attacks: These are methods like guessing passwords (brute force) or using
stolen ones (credential stuffing).
8. Zero-Day Exploits: These are attacks exploiting unknown software vulnerabilities.

3. Mitigation Techniques

 Firewalls: Block unauthorized access to networks.


 Encryption: Secure data in transit and at rest.
 Intrusion Detection Systems (IDS): Monitor systems for suspicious activity.
 Multi-Factor Authentication (MFA): Add extra layers to login security.
 Software Updates: Regularly patch vulnerabilities.

Risk Assessment and Management

1. What is Risk Assessment and Management?

 Risk Assessment: Identify and evaluate potential risks.


 Risk Management: Plan how to reduce or control risks.

2. Why is Risk Management Important?

 Minimizes Losses: Protects financial and reputational assets.


 Improves Decision-Making: Weighs risks and rewards effectively.
 Ensures Continuity: Prepares for disruptions.

Risk Assessment Process

1. Identify Risks
o External Risks: Cyberattacks, natural disasters.
o Internal Risks: Human errors, equipment failure.
2. Assess Likelihood and Impact
o Use a Risk Matrix:
 High Likelihood + High Impact = Critical Priority.
3. Control Risks
o Avoid: Change plans to eliminate the risk.
o Reduce: Take steps to lessen risk (e.g., security systems).
o Share: Transfer risk (e.g., insurance).
o Accept: Prepare for manageable risks.
4. Document Risks
o Maintain a Risk Register to track risks and mitigation steps.

Types of Risks

1. Strategic Risks: Related to business goals (e.g., market competition).


2. Operational Risks: Daily activities (e.g., supply chain issues).
3. Financial Risks: Economic impacts (e.g., currency fluctuations).
4. Compliance Risks: Legal and regulatory requirements.
5. Cybersecurity Risks: Data breaches, phishing.
6. Environmental Risks: Natural disasters.
7. Reputational Risks: Negative publicity or customer dissatisfaction.

Tools for Risk Management

 Risk Matrix: Evaluate risks based on impact and likelihood.


 Failure Mode and Effect Analysis (FMEA): Analyze potential failures.
 Monte Carlo Simulation: Predict outcomes using probability.
Conclusion: Effective system security and risk management are vital for protecting data,
maintaining operations, and building trust. By understanding security principles, recognizing
potential threats, and implementing mitigation strategies, organizations can reduce risks and
ensure long-term success.

Security Measures and Controls

Security measures protect an organization’s information, systems, and assets from threats like
unauthorized access, data breaches, and cyber attacks. These measures ensure confidentiality,
integrity, and availability of data and systems, using a combination of administrative,
technical, and physical controls.

1. Overview of Security Controls

Security controls are actions or tools used to:

 Prevent incidents (e.g., firewalls).


 Detect incidents (e.g., intrusion detection systems).
 Correct issues after an incident (e.g., restoring data).

2. Types of Security Measures

2.1 Administrative Controls

Policies and training to guide security management:

 Security Policies: Rules for acceptable behavior and practices (e.g., remote work policy).
 Risk Management: Assessing and minimizing potential risks (e.g., disaster recovery
plans).
 User Training: Educating staff about threats like phishing and password security.
 Access Control Policies: Defining who can access certain resources (e.g., role-based
access).

2.2 Technical Controls

Technology-based tools to secure data and systems:

 Firewalls: Block unauthorized network access.


 Encryption: Protect sensitive data during storage or transfer (e.g., SSL/TLS).
 Antivirus Software: Detect and remove malicious software.
 Multi-Factor Authentication (MFA): Adds extra login verification steps, like OTP or
biometrics.
 Virtual Private Networks (VPNs): Secure communication over the internet.

2.3 Physical Controls

Measures to protect physical assets:

 Access Control: Using locks, badges, or biometric scanners to restrict access to facilities.
 Cameras: Monitor sensitive areas to deter unauthorized activity.
 Environmental Controls: Protect against threats like fire or floods (e.g., fire suppression
systems).
 Secure Equipment Disposal: Destroy outdated devices to prevent data leaks.

3. Security at Different Levels

Network Security

 Network Segmentation: Isolate sensitive systems into smaller sections.


 Monitoring: Use tools like Wireshark to detect unusual activity.

Endpoint Security

 Device Management: Secure mobile and desktop devices.


 Patching: Regularly update software to fix vulnerabilities.

Application Security

 Secure Coding: Avoid coding flaws like SQL injection.


 Web Application Firewalls (WAFs): Protect websites from attacks like XSS.

4. Security Monitoring and Response

 Incident Response Plans: Step-by-step procedures for addressing incidents.


 Monitoring Tools: Analyze logs and detect threats (e.g., Splunk, SIEM).
5. Compliance

Organizations must follow regulations to protect data, like:

 GDPR: Protects personal data in the EU.


 HIPAA: Safeguards health information.
 PCI DSS: Secures payment data.

Disaster Recovery and Business Continuity Planning (DR & BCP)

Disaster Recovery (DR) and Business Continuity Planning (BCP) help organizations recover
from disruptions like cyberattacks or natural disasters.

 DR: It focuses on restoring IT systems and data.


 BCP: It ensures essential business operations continue, not just IT.

Why DR & BCP Matter

 Minimizes Downtime: It keeps operations running during disruptions.


 Protects Data: It prevents loss of sensitive information.
 Compliance: Meets legal requirements (e.g., GDPR, HIPAA).
 Builds Trust: It ensures customers and partners remain confident.

Key Components of DR & BCP

Disaster Recovery Plan (DRP)

 Risk Assessment: Identify critical systems and data.


 Recovery Objectives:
o RTO: Time to restore services (e.g., 4 hours).
o RPO: Data loss tolerance (e.g., 1-hour max).
 Backups: Store data offsite or in the cloud.
 Recovery Sites:
o Hot Site: Fully ready backup systems.
o Warm Site: Partially equipped backup location.
o Cold Site: Basic infrastructure, setup required.
 Testing: Regularly simulate disasters to ensure the plan works.

Business Continuity Plan (BCP)

 Business Impact Analysis: Identify critical processes and their importance.


 Emergency Procedures: Steps for evacuation, first aid, and communication.
 Remote Work: Ensure employees can work remotely during a crisis.
 Supplier Continuity: Backup plans for key suppliers.

Key Strategies for DR & BCP

 Cloud-Based Solutions: Use cloud backup for quick recovery.


 Redundant Systems: Duplicate systems to minimize downtime.
 Testing & Updates: Regularly test and update plans to address new risks.

Conclusion: Effective security controls, DR, and BCP ensure organizations remain protected
against threats and can recover quickly from disruptions. By combining proactive measures,
testing, and ongoing improvements, businesses can build resilience and trust with their
stakeholders.

References:

 Systems Analysis and Design" by Alan Dennis, Barbara Haley Wixom, and Roberta M.
Roth (2020, Wiley)
 Modern Systems Analysis and Design" by Jeffrey A. Hoffer, Joey George, and Joe
Valacich (2019, Pearson)
 Systems Analysis and Design Methods" by Jeffrey L. Whitten, Lonnie D. Bentley, and
Kevin C. Dittman (2018, McGraw-Hill Education)

You might also like