0% found this document useful (0 votes)
16 views72 pages

Topic 1 - Systems in Organizations - Youtube

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

Topic 1 - Systems in Organizations - Youtube

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

Topic 1

Systems in Organizations
IB Computer Science
What is this topic about?
- Designing software for
organizations
- Changing software that
organizations use
- Testing software
- Backing up Data
- Releasing Software
- Maintaining Software
Consideration for Changing to a New System
- Extent of change
- Limitations of new system
- Context in which the system
will be used
- Organizational Issues
- Change in User Roles
Difficulties in Changing Software Systems
- Users don’t like change
- Some features may be omitted
- Old systems may be faster
- Incompatibility with other systems
- Data loss
- Expensive
4 Ways to Change
- Direct Changeover - Old system
stopped, then new started
- Parallel - Old and new system run
concurrently - new data entered into
both
- Pilot - New system tested with
small part of organization, bugs
fixed, then expanded
- Phased - introduced in phases, old
system gradually phased out
Direct Changeover
Pros
- Changeover swift
- New system available
immediately

Cons
- No backup in case of failure
Parallel Running
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
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 Conversion
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
Data Migration
- Moving data from one system to another
- Can be huge process depending on sizes
of systems
- Necessary when transitioning to new
system
- Possible problems
- Incompatible file formats
- Data structure differences
- Validations rules
- Incomplete data transfers
- Different data, currency, or character
conventions
Incompatible File Formats
- Different systems might
use different versions of
same software →
different file formats
- Data simply stored in
different file formats
because of different
software
Data Structure Differences
- Ex: Data stored in
arrays in one system
and linked lists in the
other
- Ex: Data stored in
tables in one system
and spreadsheets in
the other
- Differences in how
data is structured and
stored
Validation Rules
- Different rules for what
constitutes valid data
- One system may be much
less strict than the other,
making data unacceptable
for migration
Incomplete Data Transfers
- The data transfer process is
interrupted for some reason
- Some data is moved to new
system, but not all
- Data may be lost
Different Conventions
- Dates in different order in USA
- Different currencies used in
different systems
- Different languages mean
different characters used in
different systems
What is a legacy system?
- Old technology, computer
system or application
- No longer supported/available
for purchase
- Modernization may be
expensive or time-consuming
- Ex: Floppy disks, Windows XP
Local vs Remote (SAAS) Software

- Local - runs on your


computer (Notepad,
Adobe Photoshop, etc.)
- Remote - Accessed
through a web browser
(Office 365, Google
Docs, etc.)
- Remote = SAAS
(Software as a
Service)
SAAS Benefits and
Drawbacks
Static Testing
- Did we build the right
system?
- Examines documentation,
planned specifications, test
plans etc.
- Makes sure that such
documents will lead to the
correct system being built
- Verification
Dynamic Testing
- Code is executed
- Makes sure code produced
required result
- Checks for bugs
- Software meets business
requirements
- Validation
Alpha Testing vs. Beta Testing
Black Box vs. White Box Testing
User Acceptance Testing
- Also called “end-user testing”
- Software tested by intended
audience
- Checks whether product is right for
end-users
User Documentation
- Essential so that user is aware
of all features
Types
- Manual (Hard-copy manual,
booklet, or pamphlet)
- Online (PDFs, website, video)
- Help Files (Locally accessible
text)
User Training
- Users may need to be trained
before using your product
Ways
- In-person classes
- Online Training
- Self-instruction (using provided
resources)
Automated Testing
- Uses automated testing
software
- Tests preconstructed
- Program output automatically
compared to expected output
- Rapidly complete
complex/tedious tests
Dry Run
How to Prevent Data Loss
- Failover Systems
- Redundancy
- Removable Media
- Offsite/online storage
- Physical security
Causes of Data Loss
- Hardware/System Malfunction
- Human Error
- Software Corruption
- Malicious Software
- Natural Disasters - power cuts
- equipment damage
Social and Ethical Issues + Software Design
- Reliability - odes the program
function as intended
- Jobs - will a software solution
eliminate human jobs?
- Security - is the data in the
program secure?
- Privacy - responsibility to not
share user data without
permission
Stakeholders
- A person with an interest or
concern in something, especially
a business (Oxford)
- Examples
- Owner
- User
- Manager
- Shareholder
- Employee
Getting Requirements from Stakeholders
- requirements - the tasks a program should be able to achieve
- Methods for getting requirements
- Direct observation
- Observe the system in use in the real-world
- Users may act differently under observation
- Interviews
- Ask users directly for feedback (can be very insightful)
- Costly in times and resources
- Surveys
- Send users to questionnaires
- Cheap and time-efficient
- Hard to think of good question
- Users may not take it seriously
Prototypes
- A plan or abstract
representation of the end-
product
- Usually not fully finished
- Displays functionality of one or
two key aspects
- Used to get feedback from
stakeholders
Iteration
- Cyclical process that ends in a
finished product
- Process of prototyping, testing,
analyzing test results, and
refining product until
requirements met
- Allows constant improvement
based on user or client
feedback
Software Deployment
- Release - process of launching
a new product
- Update - software file that fixes
a problem found after release
- Bug
- Security Vulnerability
- Patch - Temporary fix between
full releases
- Bug
- Security
- Upgrade capability
- Upgrade Driver
Usability
- How effectively and efficiently a
product can be used
- Examples of Usability Problems
- Laptop - battery life too short
- Phone - screen size too small, not
waterproof
- Digital camera - buttons too small,
software buggy
Accessibility
- How easily can people, especially those with uncommon challenges
use software?
- Ways to Improve Accessibility
- Braille Keyboard
- Touch Screen
- Voice Recognition
- Text Dictation
IB Questions

You might also like