Short Notes to Memorise (W1-8)

Professionalism in Practice

  • Royal Charters: a formal document signed by the monarch for organizations with public interest objectives

  • Professional Conduct: 4 aspects

Aspect

What is it

Examples

Public Interest

Comply with laws and regulations acting in public interest, respect rights of third parties and copyright, conduct professional activities without discrimination and promote equal access to IT

Digital Exclusion: number of Internet non-users decreasing over time

Professional Competence and Integrity

Being familiar with legislation and do project work with competence

Faliure of London Ambulance Service’s Computer Aided Dispact System (CAD)

Duty to Relevant Authority

Carry out duties with care and dilligence according to authority’s requirements

To not disclose confidential info without permision and withholding info

Duty to Profession

Uphold reputation of profession in general, support collegues and take responsibility

-

  • ACM Code of Ethics and Professional Conduct: states what computing professionals should do

System Development Lifecycle

  • Systems Development Lifecycle (SDLC): process of determining how system can support business needs, designing, building, and delivering to users

  • Stages of SDLC: Planning, Analysis, Design, Implementation (PADI)

Stages

Purpose and Activities

Output

Example

Planning

P: Understand why system should be developed, create plan for development and delivery

A: Feasibility analysis (technical, economic, organizational), Cost-benefit analysis

Goals for new system and work plan

LUSI: Lancaster Uni Student Information record system, streamlines administrative processes and providing info

Analysis

P: Understanding who will use system, what it does, when and where it’s used

A: PACT (People, Activities, Context, Tech)

Answering all 5 W’s

Library: Applying PACT

People = consider staff and students as users

Activities = return book, pay fines, take book

Context = potential busy library environment

Tech = database for books

Design

P: Determine overall system architecture that satisfy system essential requirements

A: Design of architecture and interface, databse and UI

System specification

-

Implementation

P: Build and test system, along with planning for installation and support

A: Testing system, support plan, different tests (Unit, acceptance, user)

Tests completed

-

  • Waterfall Development: linear approach where each phase completed before next one

    • Pros: good for high security systems, easy task arrangement as 1 phase at a time

    • Cons: time-consuming, inflexible, no software until end

  • Rapid Application Development: focus on rapid development and delivery

    • e.g. throwaway prototyping, iterative development

    • Pros: cheaper and easier, earlier user feedback, quicker delivery of software

    • Cons: planning hard, less documentation, hard to scale for large systems

Requirements

  • Business requirement: represent overall goals of project

  • User requirement: define what users need from system

  • Functional requirement: specify what software should do and what info it needs to provide

    • e.g. “system must allow users to see previous 3 years order history, system must retain order info for 3 years”

  • Non-functional requirements: describe characteristics system should possess, focussing on how functionality operates

    • 3 types:

      1. Product requirement: how product behaves (e.g. execution speed)

      2. Organisational requirement: policies and procedures (e.g. process standards)

      3. External requirement: e.g. legislative requirements

    • e.g. “it should take no longer than 2 seconds for user to get conformation for order, user must log in to password-protected area to gain order history”

  • System requirement: detail how system should be built

  • Requirements gathering: understanding what user wants or needs, and constraints

    • Methods include:

      • Questionnaires: scalable but no insight

      • Interviews: in-depth but time-consuming and biases

      • Observations: observe actual behaviours but time-consuming

      • Workshops: insights from multiple people at once but social desirability bias

  • Requirement validation: ensure users understand and agree that specification accurately reflects their needs

    • (“are we building the right system?”)

  • Requirement verification: check if requirements are correct

    • (“are we building it right?”)

Understanding Users

  • Human-Computer Interaction (HCI): studying user interaction to improve usability

  • User Experience (UX) design: enhancing overall user satisfaction and ease of use

  • Techniques for considering users: scenarios and personas

Scenarios

Stories describing how users interact with system, helps designers imagine usage and find problems

Personas

Fictional “character protraits” representing typical users based on real data, to understand different user types and their needs

  • Usability: ensuring that interactive products are easy to learn, use and enjoyable from user’s perspective

  • Nielsen’s Usability Engineering (1993): designing products that are easy and enjoyable to use by testing often, fixing problems fast and keeping real users in mind

  • Nielsen’s Usability Characteristics: Learnability, Efficiency, Memorability, Errors and Safety, Satisfaction (LEMES)

Characteristic

What is it

Leanability

System should be easy to learn and have reasonable learning curve

Efficiency

System should be efficient to use and make user productive after learning it

Memorability

System should be easy to remember how to use, even after break

Errors and Safety

Users should make few errors, and if errors occur, they should be easy to recover from

Satisfaction

System should be pleasent and enjoyable to use

  • Evaluating Usability:

    • Expert evaluation: assessing system using guidelines or heuristics

      • Heuristic evaluation: experts check against usability principles

      • Walkthroughs: experts simulate user interactions

      • Standards/Guideline Checklists: review compliance

    • User evaluation: involves actual users

      • Observations, interviews etc.

  • Nielsen’s Usability Heuristics:

    1. Simple and natural dialogue on interfaces

    2. Speak the user’s language, use simple terms

    3. Consistency with actions having same effect

    4. Feedback to users about their actions

    5. Shortcuts for experienced users

    etc…

    • Pros: quick, inexpensive, fast feedback, few ethical concerns

    • Cons: requires trained experts, may miss big issues when finding small issues

  • Dark patterns: deceptive UI design features that mislead sers into making bad choices, by exploiting human weaknesses for service provider’s benefit

    • e.g. easy to subscribe to model but hard to exit, user see low price buut presented with higher price, user sharing more personal info than intended

Accessibility

  • Digital accessibility: designing systems with disabled people in mind so they can interact with it similarly to others, regardless of physical or mental ability

  • Social Model: asserts that disability is caused by societal organization, promoting independence, choice and control

  • Medical Model: people are disabled due to impairments or differences, can lose independence, choice and control

  • W5H

    • Who using it?

    • What they doing?

    • Where they do it?

    • When they do it?

    • Why they do it?

    • How they do it?

  • Web Content Accessibility Guidelines (WCAG): provides technical standard for making web content more accessible to people with disabilities

  • Web Accessibility Principles: Perceivable, Operable, Understandable, Robust (POUR)

Principle

What is it

Example

Perceivable

Users must be able to percieve all essential on-screen info through multiple senses

Adding text alternatives for images, captions for videos

Operable

Users must be able to operate digital product’s interface with ease

Adding keyboard and touchscreen support, or giving users ample time to complete forms

Understandable

USers must understand info and operation of user interface

Writing simply, predictable navigation, and clear error messages

Robust

Product must support assistive tech

Testing keyboard-only navigation or ensuring functionality regardless of screen size

Solving Problems

  • Design ethnography: method that involves studying people in natural environment, earliest step in development lifecycle

    • Involves the usual stuff (observations. interviews etc.)

    • Having diverse number of personas and scenarios

    • e.g. wireless yoga mat: more experienced yoga people want more complex features, but less experienced yoga people want less complex features

  • Participatory design: using users or participants to test products (or use personas or scenarios)

    • e.g. children using micro:bit: we can highlight concerns involving products

  • Risk Mitigation Checklist: 4 risk zones, Authority and Discipline, Malevolence and Accidental Harm, Emotionality and Socialisation, Governance and Accounting

Risk Zone

What is it

Authority and Discipline

Will tech undermine authority? What might children be able to do? Does it allow child to escape punishment?

Malevolence and Accidental Harm

What data or tech be produced by bad people? What does it look like if user takes it too far? What are unknowing or knowing risks to children?

Emotionality and Socialisation

Does it appeal to vulnerable children? Does it isolate them?

Governance and Accounting

Will people be producing content that extends the original functionality? What tools would users interact with aa part of normal use of the tech? Is the info presented in a way that promotes informed consent?

  • Value-sensitive design: Designing a system that takes human values into account throughout the design process,

    • e.g. mental health tracker: symptom tracking to help and support a user’s wellbeing, or creating services that people can easily pick up and use, or designing the app to be easy to use, as well as being relaxing and soothing for the user to use

  • Humble AI concept: promoting fairness and ensuring trustworthy people aren’t unfairly distributed

  • Principle of Skepticism: assume AI is missing info for decision making, so seek additional data to reduce errors

  • Principle of Curiosity: learn from borderline cases by testing different decisions, so it refines decisions and makes AI more accurate

Intellectual Property, Software Protection, Limiting Liability

  • Intellectual property: any unique product that has commercial value

  • Intellectual Property Rights (IPR): gives authors/inventors exclusive rights for a finite time, includes:

    • Copyright: governed by Copyright, Design and Patents Act 1988 (CDPA), owner has exclusive rights

    • Patents: protection for new inventions, full process required

    • Law of confidence: protects info like trade secrets or lists, used when idea not made yet

    • Design rights

    • Trademarks

  • Digital Rights Management (DRM): access control mechanism used to restrict medium usage

  • Digital Economy Act 2017: internet piracy set to 10 years, modifies CDPA

  • Shareware: giving out free software so people would pay for an upgrade or donate

Professional Conduct, Legal Frameworks and Best Practice

  • Data Protection Act (DPA): protects personal information from being misused by companies, organisations or government, lasted until 2018

  • General Data Protection Act (GDPR): expanded rights for data subjects, including Right to be Forgotten and stricter obligations for organizations, 2018 onwards

    • British Airways didn’t comply with GDPR, fined £183 million

  • Ai systems can exhibit bias

    • e.g. Amazon’s hiring tool penalizing CVs with word “women”

    • Facial recognition tools can target people of colour

    • BCS Code of Conduct emphasizes caring for wellbeing of others and potential harm from created systems