TOPIC 1
System fundamentals
© Justin Robertson 2017. All rights reserved.
1.1.1 Identify the context for which a new system is planned.
© Justin Robertson 2017. All rights reserved.
Software: Bespoke vs Off-the-shelf
Off-the-shelf
Bespoke
© Justin Robertson 2017. All rights reserved.
1.1.2 Describe the need for change management.
© Justin Robertson 2017. All rights reserved.
1.1.3 Outline compatibility issues resulting from situations including legacy systems or business mergers.
© Justin Robertson 2017. All rights reserved.
1.1.4 Compare the implementation of systems using a client’s hardware with hosting systems remotely.
| In-house | | Outsourced |
✗ | High initial cost (have to buy hardware) | ✓ | Low initial cost (hosting company owns hardware) |
✗ | Technical skill required meaning recruitment costs and possibly high salary costs | ✓ | No technical skill required (hosting company has its own skilled staff) |
✓ | Low ongoing cost (no rental or management fee) | ✗ | High ongoing cost (rental of hardware or management services) |
✓ | Full control | ✗ | Loss of full control |
✓ | All data kept within the organisation | ✗ | Potentially security/confidentiality risk |
Software-as-a-service is the idea that your software needs are provided by a remotely hosted system, that is managed by an ASP (Application Service Provider), rather than having your own hardware and technical staff. Most organisations have some mix of in-house and outsourced systems.
© Justin Robertson 2017. All rights reserved.
SaaS: Software as a Service
Features
Remote hosting of data
A database is hosted and managed on the service provider's site, which may be in a different country from the customer.
Remote processing
Applications actually run on the computers at the service provider's site, rather than on the customer's computers.
Local UI
The user interface on the customer's machine sends input across the network/internet to the running process on the service provider's servers.
Thin client
The customer's computers don't do any processing or store any data; they just send input to and receive output from the service provider's servers.
Advantages
Don't have to purchase expensive equipment; so cheaper due to low set-up costs.
Don't have to recruit technical employees to run the system; cheaper due to lower salary bill.
Disadvantages
Ongoing subscription costs
Data is stored and managed remotely; there is a security risk since the data can be accessed by people outside the company.
Data has to be sent across the network/internet; there is a security risk since the data could be intercepted in transit.
The company may feel it has lost control over its data; for instance, it may want to take back-ups more often but be unable to.
The customer becomes dependent on the service provider; this is risky because if the service provider goes out of business then the customer will need to move all their data to a new provider, which could be costly.
© Justin Robertson 2017. All rights reserved.
1.1.5 Evaluate alternative installation processes.
Parallel running Old system and new system at the same time.
| Pilot running New system used by a some limited group, perhaps one office, rather than the whole company.
|
Phased conversion Going from old system to new system in steps.
| Direct changeover "Big bang" or "flicking the switch". Going from old system to new system overnight.
|
© Justin Robertson 2017. All rights reserved.
1.1.6 Discuss problems that may arise as a part of data migration.
© Justin Robertson 2017. All rights reserved.
1.1.7 Suggest various types �of testing.
These are not mutually exclusive alternatives. There is some crossover between them:
How important is testing? Implementation of a buggy system can lead to loss of productivity, customer dissatisfaction and can mean that users don't want to use the system. This last problem can be very difficult to undo.
Consider how important testing is for each of the implementation strategies in 1.1.5.
© Justin Robertson 2017. All rights reserved.
Adv and Disadv of Testing Types
The problem with white-box testing is that because the testers know how the program works, they might subconsciously only give it input that they know will be valid. Since real users do black-box testing, their input is considered more genuine and realistic.
On the other hand, white-box testers will be able to design their tests to cover all of the possible functions of the software, because they know how it works. Black-box testers may only test a small range of the software's function because they don't know what it can do.
The advantage with unit testing is that testers can make sure that every component is tested and nothing is overlooked. With system testing, it's less easy to make sure all components are tested.
On the other hand, unit testing doesn't test whether all components work together, even they work well separately. System testing is needed to make sure that there are no compatibility problems between components.
© Justin Robertson 2017. All rights reserved.
1.1.8 Describe the importance of user documentation.
© Justin Robertson 2017. All rights reserved.
1.1.9 Evaluate different methods of providing user documentation.
© Justin Robertson 2017. All rights reserved.
1.1.10 Evaluate different methods of delivering user training.
© Justin Robertson 2017. All rights reserved.
1.1.11 Identify a range of causes of data loss.
© Justin Robertson 2017. All rights reserved.
1.1.12 Outline the consequences of data loss in a specified situation.
© Justin Robertson 2017. All rights reserved.
1.1.13 Describe a range of methods that can be used to prevent data loss.
© Justin Robertson 2017. All rights reserved.
1.1.14 Describe strategies for managing releases and updates.
© Justin Robertson 2017. All rights reserved.
1.2.1 Define the terms: hardware, software, peripheral, network, human resources.
© Justin Robertson 2017. All rights reserved.
1.2.2 Describe the roles that a computer can take in a networked world.
© Justin Robertson 2017. All rights reserved.
Firewalls
© Justin Robertson 2017. All rights reserved.
1.2.3 Discuss the social and ethical issues associated with a networked world
© Justin Robertson 2017. All rights reserved.
1.2.4 Identify the relevant stakeholders when planning a new system
A "stakeholder" is any person or organization that is actively involved in a project, or whose interests may be affected positively or negatively by execution of a project.
Examples are:
© Justin Robertson 2017. All rights reserved.
1.2.5 Describe methods of obtaining requirements from stakeholders.
© Justin Robertson 2017. All rights reserved.
1.2.6 Describe appropriate techniques for gathering the information needed to arrive at a workable solution.
© Justin Robertson 2017. All rights reserved.
1.2.7 Construct suitable representations to illustrate system requirements.
Structure diagram
Main problem
Small �task A
Small �task B
Small �task C
Note: If you do Option D, don't confuse this with an inheritance hierarchy! Just because one box appears above some others, doesn't imply inheritance. This, in fact, is a composition hierarchy.
© Justin Robertson 2017. All rights reserved.
1.2.7 Construct suitable representations to illustrate system requirements.
Data Flow Diagram
© Justin Robertson 2017. All rights reserved.
1.2.7 Construct suitable representations to illustrate system requirements.
Systems Flowchart
Tape Storage
Disk Storage
Document
Process
Input/ Output
Manual Input
Documents
Master File
Payslips
Calculate Pay
Hours worked
Updated Master File
Transaction File
© Justin Robertson 2017. All rights reserved.
1.2.7 Construct suitable representations to illustrate system requirements.
Systems Flowchart Examples
Customer orders are collected on paper, keyed in, and stored in the customer orders file. A stock master file is searched to determine whether sufficient stock is available and an appropriate report is produced. Construct a systems flowchart representing the process described above. [5 marks]
A program accesses a text file on disk. To edit the text the user of the program enters data using a keyboard. The program then amends the text which was read from the file, writes the updated file back to disk and produces a printed report of all amendments made to the text file. Construct a systems flowchart representing the process. [4 marks]
A sequential transaction file is sorted, stored onto a hard disk,
and a printed report is produced. Construct a systems flowchart representing the process. [4 marks]
© Justin Robertson 2017. All rights reserved.
1.2.8 Describe the purpose of prototypes to demonstrate the proposed system to the client.
© Justin Robertson 2017. All rights reserved.
1.2.9 Discuss the importance of iteration during the design process.
© Justin Robertson 2017. All rights reserved.
1.2.10 Explain the possible consequences of failing to involve the end-user in the design process.
© Justin Robertson 2017. All rights reserved.
1.2.11 Discuss the social and ethical issues associated with the introduction of new IT systems.
Summary of Social and Ethical Issues
Social and ethical issues in collecting
Social and ethical issues associated with organising
Social and ethical issues associated with analysis
Social and ethical issues associated with storing/retrieving
Social and ethical issues associated with processing
Social and ethical issues associated with transmitting and receiving
Social and ethical issues associated with displaying
Social and ethical issues associated with Planning, Design and Implementation
Social and ethical issues related to information systems and databases
Social and ethical issues related to communication systems
Social and ethical issues related to multimedia systems
Social and ethical issues related to transaction processing systems
There is a good chance you will have to talk about issues like these in your exam, possibly in the context of a given scenario, for up to 6 marks. Familiarise yourself with this slide. I suggest you zoom in.
© Justin Robertson 2017. All rights reserved.
Social and environmental implications of computing
I strongly recommend the use of Atkisson's Sustainability Compass in tandem with the Sustainable Development Goals when considering these issues.
© Justin Robertson 2017. All rights reserved.
1.2.12 Define the term usability.
© Justin Robertson 2017. All rights reserved.
1.2.13 Identify a range of usability problems with commonly used digital devices.
Students should be aware of usability issues in a range of devices including PCs, digital cameras, cell phones, games consoles, MP3 players and other commonly used digital devices. [IB guide]
© Justin Robertson 2017. All rights reserved.
1.2.14 Identify methods that can be used to improve the accessibility of systems.
© Justin Robertson 2017. All rights reserved.
1.2.15 Identify a range of usability problems that can occur in a system.
These should be related to the following systems:
© Justin Robertson 2017. All rights reserved.
1.2.16 Discuss the moral, ethical, social, economic and environmental implications of the interaction between humans and machines.
© Justin Robertson 2017. All rights reserved.
© Justin Robertson 2017. All rights reserved.