|
|
Line 108: |
Line 108: |
| </table> | | </table> |
|
| |
|
| [[Category:web applications]] | | [[Category:IB Computer Science SL]] |
| [[Category:course]] | | [[Category:course]] |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
| =Welcome=
| |
|
| |
| =Standards=
| |
|
| |
| ==Topic 1 System fundamentals==
| |
|
| |
| *[[1.1.1 Identify the context for which a new system is planned. Level: 2]]
| |
| *[[1.1.2 Describe the need for change management. Level: 2]]
| |
| *[[1.1.3 Outline compatibility issues resulting from situations including legacy systems or business mergers. Level: 2]]
| |
| *[[1.1.4 Compare the implementation of systems using a client’s hardware with hosting systems remotely. Level: 3]]
| |
| *[[1.1.5 Evaluate alternative installation processes. Level: 3]]
| |
| *[[1.1.6 Discuss problems that may arise as a part of data migration. Level: 3]]
| |
| *[[1.1.7 Suggest various types of testing. Level: 3]]
| |
| *[[1.1.8 Describe the importance of user documentation. Level: 2]]
| |
| *[[1.1.9 Evaluate different methods of providing user documentation. Level: 3]]
| |
| *[[1.1.10 Evaluate different methods of delivering user training. Level: 3]]
| |
| *[[1.1.11 Identify a range of causes of data loss. Level: 2]]
| |
| *[[1.1.12 Outline the consequences of data loss in a specified situation. Level: 2]]
| |
| *[[1.1.13 Describe a range of methods that can be used to prevent data loss. Level: 2]]
| |
| *[[1.1.14 Describe strategies for managing releases and updates. Level: 2]]
| |
| *[[1.2.1 Define the terms: hardware, software, peripheral, network, human resources. Level: 1]]
| |
| *[[1.2.2 Describe the roles that a computer can take in a networked world. Level: 2]]
| |
| *[[1.2.3 Discuss the social and ethical issues associated with a networked world. Level: 3]]
| |
| *[[1.2.4 Identify the relevant stakeholders when planning a new system. Level: 2]]
| |
| *[[1.2.5 Describe methods of obtaining requirements from stakeholders. Level: 2]]
| |
| *[[1.2.6 Describe appropriate techniques for gathering the information needed to arrive at a workable solution. Level: 2]]
| |
| *[[1.2.7 Construct suitable representations to illustrate system requirements. Level: 3]]
| |
| *[[1.2.8 Describe the purpose of prototypes to demonstrate the proposed system to the client. Level: 2]]
| |
| *[[1.2.9 Discuss the importance of iteration during the design process. Level: 3]]
| |
| *[[1.2.10 Explain the possible consequences of failing to involve the end-user in the design process. Level: 3]]
| |
| *[[1.2.11 Discuss the social and ethical issues associated with the introduction of new IT systems. Level: 3]]
| |
| *[[1.2.12 Define the term usability. Level: 1]]
| |
| *[[1.2.13 Identify a range of usability problems with commonly used digital devices. Level: 2]]
| |
| *[[1.2.14 Identify methods that can be used to improve the accessibility of systems. Level: 2]]
| |
| *[[1.2.15 Identify a range of usability problems that can occur in a system. Level: 2]]
| |
| *[[1.2.16 Discuss the moral, ethical, social, economic and environmental implications of the interaction between humans and machines. Level: 3]]
| |
|
| |
| ==Topic 2 Computer Organization==
| |
|
| |
| *[[2.1.1 Outline the architecture of the central processing unit (CPU) and the functions of the arithmetic logic unit (ALU) and the control unit (CU) and the registers within the CPU. Level: 2]]
| |
| *[[2.1.2 Describe primary memory. Level: 2]]
| |
| *[[2.1.3 Explain the use of cache memory. Level: 3]]
| |
| *[[2.1.4 Explain the machine instruction cycle. Level: 3]]
| |
| *[[2.1.5 Identify the need for persistent storage. Level: 2]]
| |
| *[[2.1.6 Describe the main functions of an operating system. Level: 2]]
| |
| *[[2.1.7 Outline the use of a range of application software. Level: 2]]
| |
| *[[2.1.8 Identify common features of applications. Level: 2]]
| |
| *[[2.1.9 Define the terms: bit, byte, binary, denary/decimal, hexadecimal. Level: 1]]
| |
| *[[2.1.10 Outline the way in which data is represented in the computer. Level: 2]]
| |
| *[[2.1.11 Define the Boolean operators: AND, OR, NOT, NAND, NOR and XOR. Level: 1]]
| |
| *[[2.1.12 Construct truth tables using the above operators. Level: 3]]
| |
| *[[2.1.13 Construct a logic diagram using AND, OR, NOT, NAND, NOR and XOR gates. Level: 3]]
| |
|
| |
| ==Topic 3 Networks==
| |
|
| |
| *[[3.1.1 Identify different types of networks. Level: 2]]
| |
| *[[3.1.2 Outline the importance of standards in the construction of networks. Level: 2]]
| |
| *[[3.1.3 Describe how communication over networks is broken down into different layers. Level: 2]]
| |
| *[[3.1.4 Identify the technologies required to provide a VPN. Level: 2]]
| |
| *[[3.1.5 Evaluate the use of a VPN. Level: 3]]
| |
| *[[3.1.6 Define the terms: protocol, data packet. Level: 1]]
| |
| *[[3.1.7 Explain why protocols are necessary. Level: 3]]
| |
| *[[3.1.8 Explain why the speed of data transmission across a network can vary. Level: 3]]
| |
| *[[3.1.9 Explain why compression of data is often necessary when transmitting across a network. Level: 3]]
| |
| *[[3.1.10 Outline the characteristics of different transmission media. Level: 2]]
| |
| *[[3.1.11 Explain how data is transmitted by packet switching. Level: 3]]
| |
| *[[3.1.12 Outline the advantages and disadvantages of wireless networks. Level: 2]]
| |
| *[[3.1.13 Describe the hardware and software components of a wireless network. Level: 2]]
| |
| *[[3.1.14 Describe the characteristics of wireless networks. Level: 2]]
| |
| *[[3.1.15 Describe the different methods of network security. Level: 2]]
| |
| *[[3.1.16 Evaluate the advantages and disadvantages of each method of network security. Level: 3]]
| |
|
| |
|
| |
| ==Topic 4 Computational thinking, problem-solving and programming==
| |
|
| |
| *[[4.1.1 Identify the procedure appropriate to solving a problem. Level: 2]]
| |
| *[[4.1.2 Evaluate whether the order in which activities are undertaken will result in the required outcome. Level: 3]]
| |
| *[[4.1.3 Explain the role of sub-procedures in solving a problem. Level: 3]]
| |
| *[[4.1.4 Identify when decision-making is required in a specified situation. Level: 2]]
| |
| *[[4.1.5 Identify the decisions required for the solution to a specified problem. Level: 2]]
| |
| *[[4.1.6 Identify the condition associated with a given decision in a specified problem. Level: 2]]
| |
| *[[4.1.7 Explain the relationship between the decisions and conditions of a system. Level: 3]]
| |
| *[[4.1.8 Deduce logical rules for real-world situations. Level: 3]]
| |
| *[[4.1.9 Identify the inputs and outputs required in a solution. Level: 2]]
| |
| *[[4.1.10 Identify pre-planning in a suggested problem and solution. Level: 2]]
| |
| *[[4.1.11 Explain the need for pre-conditions when executing an algorithm. Level: 3]]
| |
| *[[4.1.12 Outline the pre- and post-conditions to a specified problem. Level: 2]]
| |
| *[[4.1.13 Identify exceptions that need to be considered in a specified problem solution. Level: 2]]
| |
| *[[4.1.14 Identify the parts of a solution that could be implemented concurrently. Level: 2]]
| |
| *[[4.1.15 Describe how concurrent processing can be used to solve a problem. Level: 2]]
| |
| *[[4.1.16 Evaluate the decision to use concurrent processing in solving a problem. Level: 3]]
| |
| *[[4.1.17 Identify examples of abstraction. Level: 2]]
| |
| *[[4.1.18 Explain why abstraction is required in the derivation of computational solutions for a specified situation. Level: 3]]
| |
| *[[4.1.19 Construct an abstraction from a specified situation. Level: 3]]
| |
| *[[4.1.20 Distinguish between a real-world entity and its abstraction. Level: 2]]
| |
| *[[4.2.1 Describe the characteristics of standard algorithms on linear arrays. Level: 2]]
| |
| *[[4.2.2 Outline the standard operations of collections. Level: 2]]
| |
| *[[4.2.3 Discuss an algorithm to solve a specific problem. Level: 3]]
| |
| *[[4.2.4 Analyse an algorithm presented as a flow chart. Level: 3]]
| |
| *[[4.2.5 Analyse an algorithm presented as pseudocode. Level: 3]]
| |
| *[[4.2.6 Construct pseudocode to represent an algorithm. Level: 3]]
| |
| *[[4.2.7 Suggest suitable algorithms to solve a specific problem. Level: 3]]
| |
| *[[4.2.8 Deduce the efficiency of an algorithm in the context of its use. Level: 3]]
| |
| *[[4.2.9 Determine the number of times a step in an algorithm will be performed for given input data. Level: 3]]
| |
| *[[4.3.1 State the fundamental operations of a computer. Level: 1]]
| |
| *[[4.3.2 Distinguish between fundamental and compound operations of a computer. Level: 2]]
| |
| *[[4.3.3 Explain the essential features of a computer language. Level: 3]]
| |
| *[[4.3.4 Explain the need for higher level languages. Level: 3]]
| |
| *[[4.3.5 Outline the need for a translation process from a higher level language to machine executable code. Level: 2]]
| |
| *[[4.3.6 Define the terms: variable, constant, operator, object. Level: 1]]
| |
| *[[4.3.7 Define common operators. Level: 1]]
| |
| *[[4.3.8 Analyse the use of variables, constants and operators in algorithms. Level: 3]]
| |
| *[[4.3.9 Construct algorithms using loops, branching. Level: 3]]
| |
| *[[4.3.10 Describe the characteristics and applications of a collection. Level: 2]]
| |
| *[[4.3.11 Construct algorithms using the access methods of a collection. Level: 3]]
| |
| *[[4.3.12 Discuss the need for sub-programmes and collections within programmed solutions. Level: 3]]
| |
| *[[4.3.13 Construct algorithms using pre- defined sub-programmes, one- dimensional arrays and/or collections. Level: 3]]
| |
|
| |
| ==Topic 5 Abstract data structures==
| |
|
| |
|
| |
| *[[5.1.1 Identify a situation that requires the use of recursive thinking. Level: 2]]
| |
| *[[5.1.2 Identify recursive thinking in a specified problem solution. Level: 2]]
| |
| *[[5.1.3 Trace a recursive algorithm to express a solution to a problem. Level: 2]]
| |
| *[[5.1.4 Describe the characteristics of a two- dimensional array. Level: 2]]
| |
| *[[5.1.5 Construct algorithms using two- dimensional arrays. Level: 3]]
| |
| *[[5.1.6 Describe the characteristics and applications of a stack. Level: 2]]
| |
| *[[5.1.7 Construct algorithms using the access methods of a stack. Level: 3]]
| |
| *[[5.1.8 Describe the characteristics and applications of a queue. Level: 2]]
| |
| *[[5.1.9 Construct algorithms using the access methods of a queue. Level: 3]]
| |
| *[[5.1.10 Explain the use of arrays as static stacks and queues. Level: 3]]
| |
| *[[5.1.11 Describe the features and characteristics of a dynamic data structure. Level: 2]]
| |
| *[[5.1.12 Describe how linked lists operate logically. Level: 2]]
| |
| *[[5.1.13 Sketch linked lists (single, double and circular). Level: 3]]
| |
| *[[5.1.14 Describe how trees operate logically (both binary and non-binary). Level: 2]]
| |
| *[[5.1.15 Define the terms: parent, left-child, right-child, subtree, root and leaf. Level: 1]]
| |
| *[[5.1.16 State the result of inorder, postorder and preorder tree traversal. Level: 1]]
| |
| *[[5.1.17 Sketch binary trees. Level: 3]]
| |
| *[[5.1.18 Define the term dynamic data structure. Level: 1]]
| |
| *[[5.1.19 Compare the use of static and dynamic data structures. Level: 3]]
| |
| *[[5.1.20 Suggest a suitable structure for a given situation. Level: 3]]
| |
|
| |
| ==Topic 6—Resource management==
| |
|
| |
|
| |
| *[[6.1.1 Identify the resources that need to be managed within a computer system. Level: 2]]
| |
| *[[6.1.2 Evaluate the resources available in a variety of computer systems. Level: 3]]
| |
| *[[6.1.3 Identify the limitations of a range of resources in a specified computer system. Level: 2]]
| |
| *[[6.1.4 Describe the possible problems resulting from the limitations in the resources in a computer system. Level: 2]]
| |
| *[[6.1.5 Explain the role of the operating system in terms of managing memory, peripherals and hardware interfaces. Level: 3]]
| |
| *[[6.1.7 Outline OS resource management techniques: scheduling, policies, multitasking, virtual memory, paging, interrupt, polling. Level: 2]]
| |
| *[[6.1.8 Discuss the advantages of producing a dedicated operating system for a device. Level: 3]]
| |
| *[[6.1.9 Outline how an operating system hides the complexity of the hardware from users and applications. Level: 2]]
| |
|
| |
| ==Topic 7—Control==
| |
|
| |
| *[[7.1.1 Discuss a range of control systems. Level: 3]]
| |
| *[[7.1.2 Outline the uses of microprocessors and sensor input in control systems. Level: 2]]
| |
| *[[7.1.3 Evaluate different input devices for the collection of data in specified situations. Level: 3]]
| |
| *[[7.1.4 Explain the relationship between a sensor, the processor and an output transducer. Level: 3]]
| |
| *[[7.1.5 Describe the role of feedback in a control system. Level: 2]]
| |
| *[[7.1.6 Discuss the social impacts and ethical considerations associated with the use of embedded systems. Level: 3]]
| |
| *[[7.1.7 Compare a centrally controlled system with a distributed system. Level: 3]]
| |
| *[[7.1.8 Outline the role of autonomous agents acting within a larger system. Level: 2]]
| |
|
| |
|
| |
| ==C—Web science==
| |
|
| |
|
| |
| *[[C.1.1 Distinguish between the internet and World Wide Web (web). Level: 2]]
| |
| *[[C.1.2 Describe how the web is constantly evolving. Level: 2]]
| |
| *[[C.1.3 Identify the characteristics of the following: HTTP, HTTPS, HTML, URL, XML, XSLT, CSS. Level: 2]]
| |
| *[[C.1.4 Identify the characteristics of a uniform resource identifier (URI) URL. Level: 2]]
| |
| *[[C.1.5 Describe the purpose of a URL. Level: 2]]
| |
| *[[C.1.6 Describe how a domain name server functions. Level: 2]]
| |
| *[[C.1.7 Identify the characteristics of the internet protocol (IP) transmission control protocol (TCP) file transfer protocol (FTP). Level: 2]]
| |
| *[[C.1.8 Outline the different components of a web page. Level: 2]]
| |
| *[[C.1.9 Explain the importance of protocols and standards on the web. Level: 3]]
| |
| *[[C.1.10 Describe the different types of web page. Level: 2]]
| |
| *[[C.1.11 Explain the differences between a static web page and a dynamic web page. Level: 3]]
| |
| *[[C.1.12 Explain the functions of a browser. Level: 3]]
| |
| *[[C.1.13 Evaluate the use of client-side scripting and server-side scripting in web pages. Level: 3]]
| |
| *[[C.1.14 Describe how web pages can be connected to underlying data sources. Level: 2]]
| |
| *[[C.1.15 Describe the function of the common gateway interface (CGI). Level: 2]]
| |
| *[[C.1.16 Evaluate the structure of different types of web pages. Level: 3]]
| |
| *[[C.2.1 Define the term search engine. Level: 1]]
| |
| *[[C.2.2 Distinguish between the surface web and the deep web. Level: 2]]
| |
| *[[C.2.3 Outline the principles of searching algorithms used by search engines. Level: 2]]
| |
| *[[C.2.4 Describe how a web crawler functions. Level: 2]]
| |
| *[[C.2.5 Discuss the relationship between data in a meta-tag and how it is accessed by a web crawler. Level: 3]]
| |
| *[[C.2.6 Discuss the use of parallel web crawling. Level: 3]]
| |
| *[[C.2.7 Outline the purpose of web-indexing in search engines. Level: 2]]
| |
| *[[C.2.8 Suggest how web developers can create pages that appear more prominently in search engine results. Level: 3]]
| |
| *[[C.2.9 Describe the different metrics used by search engines. Level: 2]]
| |
| *[[C.2.10 Explain why the effectiveness of a search engine is determined by the assumptions made when developing it. Level: 3]]
| |
| *[[C.2.11 Discuss the use of white hat and black hat search engine optimization. Level: 3]]
| |
| *[[C.2.12 Outline future challenges to search engines as the web continues to grow. Level: 2]]
| |
| *[[C.3.1 Define the terms: mobile computing, ubiquitous computing, peer-2-peer network, grid computing. Level: 1]]
| |
| *[[C.3.2 Compare the major features of: mobile computing ubiquitous computing peer-2-peer network grid computing. Level: 3]]
| |
| *[[C.3.3 Distinguish between interoperability and open standards. Level: 2]]
| |
| *[[C.3.4 Describe the range of hardware used by distributed networks. Level: 2]]
| |
| *[[C.3.5 Explain why distributed systems may act as a catalyst to a greater decentralization of the web. Level: 3]]
| |
| *[[C.3.6 Distinguish between lossless and lossy compression. Level: 2]]
| |
| *[[C.3.7 Evaluate the use of decompression software in the transfer of information. Level: 3]]
| |
| *[[C.4.1 Discuss how the web has supported new methods of online interaction such as social networking. Level: 3]]
| |
| *[[C.4.2 Describe how cloud computing is different from a client-server architecture. Level: 2]]
| |
| *[[C.4.3 Discuss the effects of the use of cloud computing for specified organizations. Level: 3]]
| |
| *[[C.4.4 Discuss the management of issues such as copyright and intellectual property on the web. Level: 3]]
| |
| *[[C.4.5 Describe the interrelationship between privacy, identification and authentication. Level: 2]]
| |
| *[[C.4.6 Describe the role of network architecture, protocols and standards in the future development of the web. Level: 2]]
| |
| *[[C.4.7 Explain why the web may be creating unregulated monopolies. Level: 3]]
| |
| *[[C.4.8 Discuss the effects of a decentralized and democratic web. Level: 2]]
| |
| *[[C.5.1 Describe how the web can be represented as a directed graph. Level: 2]]
| |
| *[[C.5.2 Outline the difference between the web graph and sub-graphs. Level: 2]]
| |
| *[[C.5.3 Describe the main features of the web graph such as bowtie structure, strongly connected core (SCC), diameter. Level: 2]]
| |
| *[[C.5.4 Explain the role of graph theory in determining the connectivity of the web. Level: 3]]
| |
| *[[C.5.5 Explain that search engines and web crawling use the web graph to access information. Level: 3]]
| |
| *[[C.5.6 Discuss whether power laws are appropriate to predict the development of the web. Level: 3]]
| |
| *[[C.6.1 Define the term semantic web. Level: 1]]
| |
| *[[C.6.2 Distinguish between the text-web and the multimedia-web. Level: 2]]
| |
| *[[C.6.3 Describe the aims of the semantic web. Level: 2]]
| |
| *[[C.6.4 Distinguish between an ontology and folksonomy. Level: 2]]
| |
| *[[C.6.5 Describe how folksonomies and emergent social structures are changing the web. Level: 2]]
| |
| *[[C.6.6 Explain why there needs to be a balance between expressivity and usability on the semantic web. Level: 3]]
| |
| *[[C.6.7 Evaluate methods of searching for information on the web. Level: 3]]
| |
| *[[C.6.8 Distinguish between ambient intelligence and collective intelligence. Level: 2]]
| |
| *[[C.6.9 Discuss how ambient intelligence can be used to support people. Level: 3]]
| |
| *[[C.6.10 Explain how collective intelligence can be applied to complex issues. Level: 3]]
| |