Problem: Balancing school, study and leisure time
Creating Digital Solutions – Level 8
Define and decompose real-world problems taking into account functional requirements and sustainability (economic, environmental, social), technical and usability constraints.
What is meant by define and decompose a real-world problem? A real problem or difficulty students can identify in their own lives, or the lives of those around them, maybe a social difficulty students encounter, a lack of familiarity with an environment, or a lack of cohesion in a study group or classroom. It could be anything a student might deem problematic that could possibly be improved by a game or app. To decompose means to break it down: what is at the heart of the problem, and what are the factors impacting it?
A Year 8 student named Jared is always running low on energy. He overloads himself with after-school activities in addition to his busy school schedule, and stays up late playing video games. He is often exhausted as a result. Jared decides that enough is enough and it’s time to get serious about proper time management. He plans to develop an app that will help balance his hectic schedule, and hopes to release it for others as well.
What is meant by Functional requirements: If the solution to the problem is a digital product of some description, what is required to ensure the product works the way it is intended to work?
Functional requirements for Jared’s app might include:
- Customisation – Since the app will get a lot of use day-to-day, users may want to personalise its look and appearance to suit their own tastes and needs.
- Data storage – Users will need the ability to enter their busy activities and assign times for them during the day. The app will require adequate storage for this information.
- Reminders – It might be beneficial for the app to issue reminders to the user of their upcoming events.
- Platform – If the target audience have busy schedules, frequently moving to and fro, this app may be better served on a mobile device, or perhaps multi-platform so users can input data from a home, work or school computer as well?
What might be some sustainability, technical and usability constraints?
Sustainability constraints can include environmental, social and economic needs. Does the student’s solution to the problem generate a lot of waste, like paper? What sort of impact will the student’s solution have on their social environment? Is the student’s solution to the problem free for others to consume?
Students should spend time considering any technical constraints they may encounter. This can include how much prior software and coding experience the student has, whether or not they have access to the necessary technology, etc.
Usability constraints generally apply to the target audience. What is the scope of the student’s solution to the problem? How are the target audience expected to access the solution? What can be done, and what cannot be done with the solution?
Jared considers his target audience. Students are likely to have a limited budget, and might not want to give up on one of their activities like after school sport, music practice or gaming. Would they have a mobile device? If yes, then how much mobile data would they have access to? What are the greater social sustainability impacts, if any? Jared hopes to improve time management, so in theory this will provide users with more opportunity to socialise with friends.
Jared considers his technical constraints. He doesn’t have his own computer at home, instead the family shares one. This will limit the amount of time he has at home to work on his app, and the family computer lacks a lot of crucial software he needs. He will have to plan what work can be done at home, and what will need to be completed at school where the are more computers and it is easier to access the necessary software.
Design the user experience of a digital system, generating, evaluating and communicating alternative designs
What is the user experience? During the design process students should create a visual draft of how their digital product will perform from the user’s perspective. Ideally this should be like a storyboard of the app or game. This is an early paper prototype.
Students should brainstorm, draft and sketch possibilities with careful evaluation and annotation of all ideas. Ideally a number of unique designs will be created before ultimately deciding on the digital product’s final form.
Jared has decided to build an app that is primarily accessed from his mobile phone, but will also work on a computer. He begins designing a couple of different interface ideas for the mobile app, and tests them with his friends. Their feedback is positive but they question how his app will benefit them more than any other personal organiser. Jared asks them about extra features they would like to see, works these into his design, and creates a new series of paper prototypes.
He repeats the design process until satisfied with the results.
Design algorithms represented diagrammatically and in English, and trace algorithms to predict output for a given input and to identify errors
What is meant by diagrammatically: The solution to the problem expressed in a visual diagram that is easy for others to follow, like a mind map or flowchart.
Students should develop diagrams of their algorithms before any coding or use of software takes place. To complement these diagrams, students should also express their digital product’s algorithms in plain English. Students need to test their algorithms at various stages, in both planning and development, and should keep records of the various changes to the algorithm design as it evolves.
What is meant by tracing algorithms: Tracing an algorithm involves following one’s diagram from start to finish with the purpose of prototyping its functions to discover any unforeseen consequences or missed information. Algorithms will have many different branches, and it is important to refine them early in development.
The student should choose an input to trial and follow their algorithm. The test determines whether or not a successful result can be achieved satisfactorily.
Jared develops an algorithm as a flowchart, and after conducting some research has decided the application should contain a warning or alarm when users have reached the maximum allotted time for a particular activity.
He devises simple calculations that would take into consideration how much sleep the user has had, how much time they have spent focussed on school, study, or another complex task, as well as any physical activity undertaken.
The diagram shows the data’s input, and how it leads to a warning when the user is nearing the maximum time allowed. Jared composes a plain English breakdown of his algorithm, and then begins tracing through it to determine whether or not it will function as intended.
Develop and modify programs with user interfaces involving branching, iteration and functions using a general-purpose programming language
What is meant by branching, iteration and functions: Branching involves a decision between one of two or more actions depending on sets of conditions and the data provided. For example if a user inputs some personal data, they may choose whether they are a boy or girl. This decision may have consequences such as the app or game’s colour palette depending on the user’s gender.
An iteration is a repetition of a process or set of instructions in computer programming where each repeated cycle builds on the previous one. In code, this typically uses a “for” loop command that tells a program that as long as a certain variable meets a certain specific requirement, continue doing x, y or z until the variable is no longer true.
A function is a group of instructions in a portion of code used by programming languages to return a single result or a set of results. These instructions can be executed anywhere in the program, for example saving a document is a function which is called when you click the Floppy disk icon.
At this level students should create digital products which includes each of these elements.
Evaluate how well student-developed solutions and existing information systems meet needs, are innovative and take account of future risks and sustainability
A student should produce a self-reflection and evaluation of their work, addressing how their solution to the problem is effective or not-effective. Students should consider the risks of future developments for their products, being mindful that others may create something inspired by their own idea. Lastly how does the student intend to use their own work as an opportunity to build future innovations?
Jared has completed his app and enjoys a brief respite before composing a reflection of his work. He trials it for a week and builds a comprehensive evaluation of whether his time management has improved. With a constant reminder hovering nearby, he finds himself more disciplined when it comes to spending time on different tasks. 5 more minutes no longer stretches into 30 minutes. With this in mind he releases his app to his classmates, studies their behaviour and adds the results to his reflection.
He considers what he would do differently if he were to undertake the same project with the knowledge he now has. He writes about the positive impact on his friend’s energy levels and social commitments. He considers potential risks that may develop from releasing this app on a larger scale and includes them.
Finally he discusses the opportunities he is providing for future innovation. Jared is happy with his work but recognises there is always room for improvement. He sets up a website to advertise his app in the hope that others may be inspired by his work and create new competitors to further improve the standards he has achieved.
Creating Designed Solutions – Level 8
By the end of Level 8 students explain factors that influence the design of solutions to meet present and future needs. They explain the contribution of design and technology innovations and enterprise to society. Students explain how the features of technologies impact on designed solutions and influence design decisions for each of the prescribed technologies contexts.
Critique needs or opportunities for designing and investigate, analyse and select from a range of materials, components, tools, equipment and processes to develop design ideas
To satisfy this criteria a student should adequately demonstrate their thought process while devising a solution to the problem. Ideally a student should demonstrate a willingness to experiment with new software and digital tools.
Jared needs to identify all the physical and digital tools he’ll need to build his application. Once the concept of the application has taken shape, and he has developed a comprehensive plan of the project, he might want to investigate the various app building tools that might best serve his particular project.
If he has a prior knowledge of these tools will that influence his decision? Would he like to use something he is familiar with, or is he interested in expanding his knowledge? Will he need to use more than one piece of software? If so, how many?
Generate, develop and test design ideas, plans and processes using appropriate technical terms and technologies including graphical representation techniques
Students should display an ability to plan, learn the correct technical language, produce visual design sketches which illustrate the look and feel of their digital product, and demonstrate a willingness to experiment with different designs. The first solution is rarely the best one, so students may need to take a step backwards before they can move forward.
Jared has produced a design, but he feels that it’s not overly functional; the app interface has far too many buttons and options on the one screen. It looks too busy and complex so he redesigns the interface by hand, then creates another flow-chart outlining drop-down menus so users can navigate more easily through the options.
Effectively and safely use a broad range of materials, components, tools, equipment and techniques to produce designed solutions
Students will undoubtedly go through periods of experimentation at points through the development of their game or app. It’s important that students use materials effectively, and will find planning helpful rather than immediately using software.. Students should experiment with the various software suites, such as Touch Develop, Visual Studio, Unity, and Minecraft Education, to find out what best suits their project.
Independently develop criteria for success to evaluate design ideas, processes and solutions and their sustainability
Students should develop their own set of criteria to judge their work. This might include how well the game or app has met its intended purpose, how functional it is, whether it’s easy to navigate the interface, is it easy to access but builds in complexity as it goes on? Are there ‘dead-ends’ or errors? Does the game or app have longevity; or room to be updated?
Students may look at existing apps and games to help them develop their criteria, and may wish to consider the sustainability of their design process and the materials involved. Have the resources they used been expensive or wasteful? What have they achieved digitally using free resources?
After Jared has determined his app’s basic premise, he looks at other apps for inspiration noting their functionality, the ease of their interfaces, and how well they achieve their purpose. He develops a criteria for himself, using functionality, interface design and customisation as the main criteria points for the app itself, whilst deciding his self-evaluation criteria will revolve around the development of a management plan and how well he sticks to it.
Planning and managing
Use project management processes to coordinate production of designed solutions
Students should break down their project, identify the key steps, and develop timelines accordingly. What are the main things they’ll need to achieve along the way? When should these milestones occur? Students should also factor in the possibility of trial and error, experimentation, and possible setbacks.
Jared sets out a four week deadline for himself, with an extra fifth week in case of an emergency. He divides the project into four milestones, with the aim of completing one each week. As work on the app progresses, he notes any missed opportunities and explains whether or not the fifth week will be necessary, and if so what will take place.
Decision Making and Actions – Level 8
Explore the extent of ethical obligation and the implications for thinking about consequences and duties in decision-making and action
Students should consider their ethical obligations, and what consequences may arise if their app or game was released publically. Students should ask themselves critical questions as to whether their game or app might be considered unethical in some way. If their app or game saw a wide release, is there a potential for users to misappropriate the student’s good intentions? If so, how does the student plan to prevent this?
Discuss the role of context and experience in ethical decision-making and actions
A student should consider the context in which their digital product will be produced and consumed. Different cultures appreciate different societal expectations and what is inoffensive to one may be of grave offence to another. Students should maintain a crucial balance between desired design outcomes and ethical responsibilities.
During Jared’s trialling and testing of his new app, he realises that he hasn’t programmed any pronouns for girls or women who might choose to download it. At this stage the app assumes everyone is male, which isn’t inclusive. He dedicates some time to add both gender-neutral and female pronouns. Next he adds the ability for the user to choose their preferred gender, and also includes another option to remain gender-neutral. He notes the change in his design documents.