9.1.1 Social and ethical issues Flashcards

1
Q

What was the Year 2000 problem?

A

The Y2K, or millennium bug, was a computer problem that was caused by programmers storing a year as 2 digits instead of 4. It is a classic case of an inappropriate data type being used. Decades before the year 2000, developers needed to save space wherever possible, and few would have believed that their code would have still been in use.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

List and describe different types of computer malware.

A
  • Virus - Attaches to an executable file, requires human interaction to spread.
  • Worm - Can replicate itself without human interaction.
  • Trojan - Appears as a useful program but damages system.
  • Spyware - Gathers and transmits information without a users consent.
  • Adware - Not necessarily malicious, presents advertising to users to generate revenue.
  • Rootkit - Enables access to a low level of an operating system. Often masks itself.
  • Ransomware - Holds user data ‘hostage’ (or threatens to reveal it) unless payment is made.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Identify social and ethical issues associated with the internet

A
  • Cybersafety - cyberbullying, grooming, cyberstalking, identity theft.
  • Social networks - similar issues to cybersafety,
  • Accuracy of information - bias, misinformation, timeliness of information.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

List 7 important responsibilities of developers when they produce software solutions.

A
  1. Producing quality software solutions.
  2. Acknowleding the intellectual property of others
  3. Appropriately responding to user-identified problems
  4. Neither generating nor transmitting malware
  5. Addressing ergonomic issues in software design
  6. Ensuring software addresses inclusivity issues
  7. Ensuring individuals’ privacy is not compromised
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are some factors that affect software quality from a user’s perspective?

A
  • Correctness- does it do what it is supposed to do?
  • Reliability - does it do it all of the time?
  • Efficiency - does it do it in the best way possible?
  • Security - does it store users information security and protect from malware?
  • Usability - is it easy and intuitive to use?
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Outline 4 external factors that affect sofware quality.

A
  • Hardware - processor speed, storage, RAM.
  • Operating system - file access, user interface elements.
  • Other software - might use shared resources, or interfere with the operation of the application.
  • Run time errors - should be dealt with gracefully.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

How can software developers design code that addresses ergonomic issues?

A

Ergonomic code refers to the interaction between users and their work environment.

Software developers can do this by ensuring software exhibits reasonable response times and that the user interface is intuitive and consistent in design. Additionally, screen elements such as buttons and check boxes should follow recognised usages.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What are some inclusivity issues that developers should be aware of when creating code?

A
  • Culture (eg format of dates, language)
  • Economic (eg pricing vs quality)
  • Gender
  • Disability
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Are users permitted to make copies of purchased software?

A

Most licenses allow one copy to be made for backup purposes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Why do users never own software after purchasing it?

A

Purchasing software is the cost of licensing. In this way the copyright interests of the developer are protected.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What were the main issues in RACV vs Unisys?

A

Unisys demonstrated an incomplete version of the software (a functional prototype) that met the response times needed by the RAVC but the final product failed to deliver on this and other functionality in the final product.

This case highlights the need to carefully define criteria on which to evalutate the final product.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What were the main issues in the NSW TCard case?

A

The NSW Government sued ERG for failing to deliver the electonic ticketing system TCard.

While ultimately unsuccessful, ERG argued that they were refused the opportunity to test their system in a live environment.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What were the main issues in the Metallica vs Napster case?

A

The Napster peer-to-peer file sharing software flourished as a way for users to unlawfully share music.

Metal band Metallica sued Napster for infringement of copyright. Napster were required to pay out $26 million and ultimately went out of business.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What was the main issue in the Apple vs Microsoft case?

A

Apple sued Microsoft for patent infringement following the release of Windows 2.0, saying that the look at feel was too similar to their OS.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

In which stage of the software development cycle is the criteria for evaluating the quality of the final solution established?

A

Defining and understanding the problem

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What are some factors that affect software quality from a developer’s perspective?

A
  • Maintainability - is it easy to modify/update?
  • Testability - can it be tested thoroughly?
  • Portability - can it be used in other environments (hardware, OS, etc)?
  • Reusability - can it be used in another project?
17
Q

How can developers appropriately respond to user-identified problems?

A

By facilitating the reporting of problems. For example, through an online “bug report” form (or from within the app), or a “send crash report” facility if the application crashes.

When software upates are released, the “release notes” should detail any changes and bug fixes.

A webpage of known issues and potential workarounds for users could also be maintained.