designing software for a million users
Post on 31-Jul-2015
211 Views
Preview:
TRANSCRIPT
Designing Software for a Million Users Slide 1
Designing Software for a Million Users
A story about a socio-technical system
Designing Software for a Million Users Slide 3
2007
Collaboration tools
Educational content
Documentmanagement
Designing Software for a Million Users Slide 4
Why me?
“There are a number of contractual stakeholders identified as users of Glow. These are the 32 local authorities, the 7 faculties of education within universities, Learning and Teaching Scotland, the Scottish Qualifications Agency, Her Majesty's Inspectorate of Education and the Scottish Government itself. “
Designing Software for a Million Users Slide 6
Remit
• Deliver a specification for a system to replace Glow
– Deadline was end- 2012
– System has to be acceptable to the teaching community
• Must be compatible with educational experiments in 1:1 device provision in schools and BYOD.
• Budget unspecified but ‘significantly less’ than the current Glow budget of £5 million/year
Designing Software for a Million Users Slide 10
Softwarecomplexity
Technicalcomplexity
Governancecomplexity
Management
complexity
Environmental
complexity
Designing Software for a Million Users Slide 11
Technies don’t understand other
types of complexity
Non-techies don’t understand technical
complexity
Designing Software for a Million Users Slide 12
Governance complexity
• Education Scotland
– Responsible for managing the Glow service and deciding on the tools to be supported within Glow
• Research Machines
– Responsible for providing the Glow service, system enhancement, etc.
– Service also seen as basis of product to be sold elsewhere
• Local authorities
– Hardware and network provision. Content filtering.
– Often outsourced to IT companies (BT, Fujitsu, etc.)
• Schools
– Policies for Glow use; Some hardware provision.
Designing Software for a Million Users Slide 13
Environmental complexity
• Heterogeneous hardware platform from 8 year old PCs (honestly) to iPads
• Network connectivity from <1Mbit/second to 25 Mbits/second
• Wide range of content filtering policies across local authorities
• Government structure– Legally, Scottish Govt. can only advice local
authorities on policies – they cannot compel them to adopt policies
• Education is a newsworthy issue
Designing Software for a Million Users Slide 14
Software engineering
Establish the requirements for
the DLE
Define an architecture for the
system
Stakeholder consultationUse-case modellingPrototypingConflict analysis
System modelling, ADLs, UML
Designing Software for a Million Users Slide 18
“We don’t need a new system, just the freedom to use what is available”
Designing Software for a Million Users Slide 22
Software engineering meets reality
Prof. Ian SommervilleSchool of Computer ScienceUniversity of St AndrewsScotland
Designing Software for a Million Users Slide 23
Reductionism
• Reductionism– “an approach to
understanding the nature of complex things by reducing them to the interactions of their parts, or to simpler or more fundamental things”.
• Its focus is on the parts of a system, not the relationships between those parts
• Reductionism underpins most engineering, including software engineering
Designing Software for a Million Users Slide 24
Reductionist assumptions
Owners of a system control its development
Decisions made rationally, driven by technical criteria
Definable problem and clear system boundaries
No single owner or controller
Decisions driven by political motives Wicked problem and
constantly renegotiated system boundaries
Reductionist assumptions
Control Rationality Problem definition
Large-scale complex IT systems reality
Designing Software for a Million Users Slide 27
Jack is a primary school teacher in Ullapool, teaching P6 pupils. He has decided that a class project should be focused around the fishing industry in the north-west Highlands, looking at the history, development and economic impact of fishing. As part of this, pupils are asked to gather and share reminiscences from relatives, use newspaper archives and collect old photographs related to fishing and fishing communities in the area.
Pupils use a Glow+ wiki to gather together fishing stories and SCRAN to access newspaper archives and photographs. However, Jack also needs a photo sharing site as he wants pupils to take and comment on each others' photos and to upload scans of old photographs which they may have in their families.
Designing Software for a Million Users Slide 28
Jack sends an email to a primary school teachers group which he is a member of to see if anyone can recommend an appropriate system. Two teachers reply and both suggest that he uses KidsTakePics, a photo sharing site that allows teachers to check and moderate content.
As KidsTakePics is not integrated with the Glow+ authentication service, he sets up a teacher and a class account. He uses the Glow+ setup service to add KidsTakePics to the services seen by the pupils in his class so that when they login, they can immediately use the system to upload photos from their phones and class computers.
Designing Software for a Million Users Slide 37
Coolness!
“It has to look cool or the kids won’t use it”
Designing Software for a Million Users Slide 38
Digitising Government
Delivering technology to people who don’t really want it and who won’t really see any real benefit from it
Designing Software for a Million Users Slide 39
Politicians won’t or can’t accept that the problems with complex Government systems are not technical problems
Designing Software for a Million Users Slide 40
Government (and EU) procurement models are designed for police cars and paper clips, not software
top related