Incomplete (but these are minor tidbits)
Changing Software Systems (Consideration)
Extent of change
Limitations of new system
Context in which the system will be used (organizational issues; user roles)
Changing Software Systems (Challenges
Users don’t like change
Some features may be omitted
Old systems may be faster
Incompatible with other systems
Data loss/corruption/unusability
Expensive
Direct Changeover
Old system stopped, then new started
Pros: Changeover swift, new system available immediately
Cons: No backup in case of failure
Parallel Changeover
Old and new system run concurrently - new data entered into both
Pros: Backup if new system fail, output from both system can be compared to verify that new system works correctly
Cons: Running both systems is expensive
Pilot Changeover
New system tested with small part of organization, bugs fixed, then
expanded
Pros: All features tested before adoption by whole organization, staff who
are part of pilot can train others, if failure, only small part suffers
Cons: No backup for pilot group in case of failure
Phased Changeover
introduced in phases, old system gradually phased out
Pros: Allows people to get used to new system, training can be done in stages
Cons: If system fails, no backup for that part of system
What is data migration?
Moving data from one system to another. Necessary when transitioning to a new system; can be a huge process depending on system sizes.
Possible issues with data migration
Incompatible file formats
Different systems may use different versions of the same software, so data is stored differently in different file formats due to software differences
Data structure differences
e.g., arrays in one and linked lists in another
Validation rules
Differences in what counts as “valid data”
Different data, currency, or character conventions
e.g., US dates vs EU dates
Legacy Systems
Old technology, computer system or application
No longer supported/available for purchase
Modernization may be expensive or time-consuming
SaaS
Software As A Service
Local SaaS
Runs on your computer
One-time fee
Installation
Update may not be automatic
Users may be using different version depending on update status
Can be used on one computer
Remote SaaS (most commonly asked for)
Accessed through a web browser
Subscription fee
Can use used on any number of computers via web browser
Automatic Updates
Users always using the same version
Pros of SaaS
Employees can operate software from anywhere
Cheaper
Fewer support staff necessary
Pay as you go/Subscription model
Scaling up to serve more users easy
Easier to maintain - don’t need to worry about individual computer problems
Cons of SaaS
Users have no control over availability of system
Users have no control over security
If SAAS provider gets acquired, user has no control over system
Large-scale data corruption possible
Static Testing
Testing that checks if the correct system is being built; checks the plans in place. Verifies documentation and planned specifications. D
Dynamic Testing
Makes sure code is executed and produces the desired result (it validates the software). Checks for bugs and checks that the software achieves business requirements.
Alpha Testing
Testing done by the internal team that lasts for months. Confirms that software works as intended and looks for any bugs/UI issues to fix.
Beta Testing
Testing done by potential end users outside the company. Lasts for weeks, largely unstructured, seeking to model a real world environment and get feedback from users. Uses feedback to fix bugs and make software more useful for end users.
Black Box Testing
Tests software through using it. No access to codebase or internal workings; no programming knowledge required.
White Box Testing
Tests a program’s code to make sure everything is working. Knowledge of programming required as it is done by programmers.
User Acceptance Testing
“End user testing,” product is tested by intended audience.
Automated Testing
Uses automated testing software with preconstructed tests, usually specified or software or written into code. Output is automatically compared to expected output. Easily completes complex/tedious tasks.
User Documentation Types
Manual, Online, Help Files
Pros and Cons of Manual Documentation
(Paper manual, booklet, or pamphlet)
Pros: Doesn’t require installation, computer, or internet connection
Cons: Can be damaged or lost, cannot be updated
Pros and Cons of Online Documentation
(PDFs, website, video)
Pros: Can be much longer than manual, can be updated, search capabilities, can be updated easily
Cons: Internet required, can be difficult for inexperienced users to access
Pros and Cons of Help Files
(Locally accessible programs that display text)
Pros: Easily accessible in software program, contain general instructions for use, easier to access for inexperienced users
Cons: Requires installation first, which can be difficult for inexperienced users, lacks search capability
User Training Methods
In-person classes
Pros: Cheap (many students for one instructor)
Cons: Less personalized, students may become bored, lost, or lose pace
Online training - Instructor training one student or small group of students
Pros: Can be more personalized, focuses on needs of students via online instructor
Cons: Can be more expensive if individual
Self-instruction
Pros: Low-cost (no teacher needed), flexible timeline, users can choose what to focus on
Cons: No guidance, users may feel lost, lack of structure means that users may not learn everything then need to
Causes of Data Loss
Hardware/System Malfunction
Human Error
Software Corruption
Malicious Software (Viruses, etc.)
National Disasters (Power cuts = equipment damage)
Ways of Preventing Data Loss
Failover Systems - there is a secondary system that can be switched to if the primary system fails
Redundancy - a duplicate of a system’s components and data are duplicated so that a backup is present
Removable Media - removal storage device can be used for data backup
Offsite/online storage - data is backed up at a different location or in the “cloud
Physical Security - data is secured from natural disasters or physical tampering
Stakeholder
A person with an interest in something
Getting Feedback from Stakeholders
Direct Observation - observe the system in use in the real-world
Pros: Opportunity to see users using a produce
Cons: Users may act differently under observation
Interviews
Pros: Asking users directly for feedback can be very insightful
Cons: Costly in times and resources
Surveys - Send users to questionnaires
Pros: Cheap and time-efficient
Cons: Hard to think of good question, Users may not take it seriously