1. 1.2 System design basics
1.1. 1.2.1 Terms
1.1.1. Hardware: physical component of a computer
1.1.2. Software: programs and instructions that control the computer
1.1.3. Peripheral: any external device connected to the computer(mouse, keyboards)
1.1.4. Network: a group of interconnected devices
1.1.5. Human resources: humans operating the computers within an organization
1.2. 1.2.2 the roles a computer can take in a networked world
1.2.1. Client: a computer accessing resources hosted by other computer/server
1.2.2. Server: a computer hosting resources
1.2.3. Email server: sends and receives email
1.2.4. Dns server: maps web addresses to IP addresses
1.2.5. Router: a device that connects 2 or more networks
1.2.6. Firewall: a network security device. Controls network traffic based on security rukes
1.3. 1.2.3 social and ethical issues associated with a networked workd
1.3.1. Loss of jobs
1.3.2. Digital divide
1.3.3. Security
1.3.4. Privacy
1.4. 1.2.4 relevant stakeholders when planning a new system
1.4.1. End-users: they purchase the product/service
1.4.2. Owners and shareholders: internal, supply capital
1.4.3. Employee
1.4.4. Suppliers: sell goods to your business
1.4.5. Government agencies: concern with regulations and laws
1.4.6. Creditors: they lend money to the business
1.5. 1.2.5 methods of obtaining requirements from stakeholders
1.5.1. Direct observation
1.5.2. Interviews
1.5.3. Surveys
1.5.4. Collecting documents
1.6. 1.2.6 techniques for gathering the info needed to arrive at a workable solution
1.6.1. Examining current systems by direct observation
1.6.2. Looking at competing products to learn their weaknesses and strengths
1.6.3. Organizational capabilities should be defined as expertise, knowledge, processes and skills
1.6.4. Literature searches
1.7. 1.2.7 construct suitable representations to illustrate system requirements
1.7.1. Flow charts
1.7.2. Data flow diagrams
1.7.3. Structure chart
1.7.4. Pseudocode
1.8. 1.2.8 prototype: a plan or abstract representation of the product
1.9. 1.2.9 Iteration (planning)
1.9.1. Plnning
1.9.2. Development and analysis
1.9.3. Creation and designig
1.9.4. Implementation and testing
1.9.5. Maintenance
1.10. 1.2.10 end-users are a key factor for success, so failing to involve them has consequences
1.11. 1.2.11 social and ethical issues associated with the introduction of new IT systems
1.11.1. Privacy and data collection
1.11.2. Algorithm bias and discrimination in training data
1.11.3. Risk of cyberattacks
1.11.4. Intellectual property and Copyright
1.11.5. Automation through IT systems can lead to job displacement
1.11.6. Digital divide and access inequities
1.12. 1.2.12 terms
1.12.1. Usability: hoe effectively and efficiently an object is
1.12.2. Accessibility: the design of products, services, devices, etc
1.12.3. Ergonomics: design of products to optimize them for human use
1.13. 1.2.13 identify usability problems with digital devices
1.14. 1.2.14 identify methods that can be used to improve the accessibility of systems
1.15. 1.2.15 identify usability problems that can occur in a system
1.16. 1.2.16 moral, ethical, social, economic and environmental implications of the interactions between humans and machines
2. 1.1 Systems in Organizations
2.1. 1.1 Systems in Organizations
2.1.1. 1.1.1 Identify context
2.1.2. 1.1.2 Change management
2.1.3. 1.1.3 Legacy system: no supported
2.1.4. 1.1.4 System as a service (SaaS):hosted in the cloud
2.1.5. 1.1.5 Alternative intalallition proces
2.1.5.1. Parallel running: Old and new at the same time
2.1.5.2. Pilot Running: Small part of new with the old
2.1.5.3. Direct changeover: Direct change
2.1.5.4. Phased conversion: New grows, old decrases
2.1.6. 1.1.6 Data migration: move one system of location
2.1.7. 1.1.7 Types of testing
2.1.7.1. User acceptance
2.1.7.2. Static testing: no code execution
2.1.7.3. Dyniamic testing: with code execution
2.1.7.4. Alpha testing: by internal people of the organization
2.1.7.5. Beta testing: By users in real scenarios
2.1.7.6. Black box testing: testing without knowing the internals
2.1.7.7. White box testing: tests the internal structure
2.1.7.8. Automated testing: compares the actual test results with the expected
2.1.8. 1.1.8 User documentation: a document that explains how to to the system
2.1.9. 1.1.9 User documentation can be physical or digital, simple and clear
2.1.10. 1.1.10 methods for delivering user training
2.1.10.1. Self-instruction: users learn on their own
2.1.10.2. Formal classes: in person classes
2.1.10.3. Remote: online classes
2.1.11. 1.1.11 data loss
2.1.11.1. Hardware/system malfunction
2.1.11.2. Human error
2.1.11.3. Software corruption
2.1.11.4. Malware
2.1.11.5. Natural disasters
2.1.11.6. Malicious activity by employees or intruders
2.1.12. 1.1.12 data loss has consequences
2.1.13. 1.1.13 prevent data loss
2.1.13.1. Secondary systems
2.1.13.2. Replicating data
2.1.13.3. Removable data
2.1.13.4. Cloud storage
2.1.13.5. Physical security
2.1.14. 1.1.14 Terms:
2.1.14.1. Release: launching a new product
2.1.14.2. Update: software file that fixes a problem
2.1.14.3. Patch: fix a temporary bug
2.1.15. 1.1.14 strategies for managing releases and updates
2.1.15.1. Release management: produces software in short cycles
2.1.15.2. Update management
2.1.15.2.1. Manually: the user installs it by itself
2.1.15.2.2. Atomatically: online downloads