IB Computer Science SL standards
Standard | Big Idea |
---|---|
'System fundamentals | |
Identify the context for which a new system is planned. | System fundamentals |
Describe the need for change management. | System fundamentals |
Outline compatibility issues resulting from situations including legacy systems or business mergers. | System fundamentals |
Compare the implementation of systems using a client’s hardware with hosting systems remotely. | System fundamentals |
Evaluate alternative installation processes. | System fundamentals |
Discuss problems that may arise as a part of data migration. | System fundamentals |
Suggest various types of testing. | System fundamentals |
Describe the importance of user documentation. | System fundamentals |
Evaluate different methods of providing user documentation. | System fundamentals |
Evaluate different methods of delivering user training. | System fundamentals |
Identify a range of causes of data loss. | System fundamentals |
Outline the consequences of data loss in a specified situation. | System fundamentals |
Describe a range of methods that can be used to prevent data loss. | System fundamentals |
Describe strategies for managing releases and updates. | System fundamentals |
Define the terms: hardware, software, peripheral, network, human resources. | System fundamentals |
Describe the roles that a computer can take in a networked world. | System fundamentals |
Discuss the social and ethical issues associated with a networked world. | System fundamentals |
Identify the relevant stakeholders when planning a new system. | System fundamentals |
Describe methods of obtaining requirements from stakeholders. | System fundamentals |
Describe appropriate techniques for gathering the information needed to arrive at a workable solution. | System fundamentals |
Construct suitable representations to illustrate system requirements. | System fundamentals |
Describe the purpose of prototypes to demonstrate the proposed system to the client. | System fundamentals |
Discuss the importance of iteration during the design process. | System fundamentals |
Explain the possible consequences of failing to involve the end-user in the design process. | System fundamentals |
Discuss the social and ethical issues associated with the introduction of new IT systems. | System fundamentals |
Define the term usability. | System fundamentals |
Identify a range of usability problems with commonly used digital devices. | System fundamentals |
Identify methods that can be used to improve the accessibility of systems. | System fundamentals |
Identify a range of usability problems that can occur in a system. | System fundamentals |
Discuss the moral, ethical, social, economic and environmental implications of the interaction between humans and machines. | System fundamentals |
Computer Organization | |
Outline the architecture and function of the CPU, ALU, CU and the registers within the CPU. | Computer organization |
Describe primary memory. | Computer organization |
Explain the use of cache memory. | Computer organization |
Explain the machine instruction cycle. | Computer organization |
Identify the need for persistent storage. | Computer organization |
Describe the main functions of an operating system. | Computer organization |
Outline the use of a range of application software. | Computer organization |
Identify common features of applications. | Computer organization |
Define the terms: bit, byte, binary, denary/decimal, hexadecimal. | Computer organization |
Outline the way in which data is represented in the computer. | Computer organization |
Define the Boolean operators: AND, OR, NOT, NAND, NOR and XOR. | Computer organization |
Construct truth tables using the above operators. | Computer organization |
Construct a logic diagram using AND, OR, NOT, NAND, NOR and XOR gates. | Computer organization |
Networks | |
Identify different types of networks. | Networks |
Outline the importance of standards in the construction of networks. | Networks |
Describe how communication over networks is broken down into different layers. | Networks |
Identify the technologies required to provide a VPN. | Networks |
Evaluate the use of a VPN. | Networks |
Define the terms: protocol, data packet. | Networks |
Explain why protocols are necessary. | Networks |
Explain why the speed of data transmission across a network can vary. | Networks |
Explain why compression of data is often necessary when transmitting across a network. | Networks |
Outline the characteristics of different transmission media. | Networks |
Explain how data is transmitted by packet switching. | Networks |
Outline the advantages and disadvantages of wireless networks. | Networks |
Describe the hardware and software components of a wireless network. | Networks |
Describe the characteristics of wireless networks. | Networks |
Describe the different methods of network security. | Networks |
Evaluate the advantages and disadvantages of each method of network security. | Networks |
Computational thinking, problem-solving and programming | |
Identify the procedure appropriate to solving a problem. | Computational Thinking |
Evaluate whether the order in which activities are undertaken will result in the required outcome. | Computational Thinking |
Explain the role of sub-procedures in solving a problem. | Computational Thinking |
Identify when decision-making is required in a specified situation. | Computational Thinking |
Identify the decisions required for the solution to a specified problem. | Computational Thinking |
Identify the condition associated with a given decision in a specified problem. | Computational Thinking |
Explain the relationship between the decisions and conditions of a system. | Computational Thinking |
Deduce logical rules for real-world situations. | Computational Thinking |
Identify the inputs and outputs required in a solution. | Computational Thinking |
Identify pre-planning in a suggested problem and solution. | Computational Thinking |
Explain the need for pre-conditions when executing an algorithm. | Computational Thinking |
Outline the pre- and post-conditions to a specified problem. | Computational Thinking |
Identify exceptions that need to be considered in a specified problem solution. | Computational Thinking |
Identify the parts of a solution that could be implemented concurrently. | Computational Thinking |
Describe how concurrent processing can be used to solve a problem. | Computational Thinking |
Evaluate the decision to use concurrent processing in solving a problem. | Computational Thinking |
Identify examples of abstraction. | Computational Thinking |
Explain why abstraction is required in the derivation of computational solutions for a specified situation. | Computational Thinking |
Construct an abstraction from a specified situation. | Computational Thinking |
Distinguish between a real-world entity and its abstraction. | Computational Thinking |
Describe the characteristics of standard algorithms on linear arrays. | Computational Thinking |
Outline the standard operations of collections. | Computational Thinking |
Discuss an algorithm to solve a specific problem. | Computational Thinking |
Analyse an algorithm presented as a flow chart. | Computational Thinking |
Analyse an algorithm presented as pseudocode. | Computational Thinking |
Construct pseudocode to represent an algorithm. | Computational Thinking |
Suggest suitable algorithms to solve a specific problem. | Computational Thinking |
Deduce the efficiency of an algorithm in the context of its use. | Computational Thinking |
Determine the number of times a step in an algorithm will be performed for given input data. | Computational Thinking |
State the fundamental operations of a computer. | Computational Thinking |
Distinguish between fundamental and compound operations of a computer. | Computational Thinking |
Explain the essential features of a computer language. | Computational Thinking |
Explain the need for higher level languages. | Computational Thinking |
Outline the need for a translation process from a higher level language to machine executable code. | Computational Thinking |
Define the terms: variable, constant, operator, object. | Computational Thinking |
Define common operators. | Computational Thinking |
Analyse the use of variables, constants and operators in algorithms. | Computational Thinking |
Construct algorithms using loops, branching. | Computational Thinking |
Describe the characteristics and applications of a collection. | Computational Thinking |
Construct algorithms using the access methods of a collection. | Computational Thinking |
Discuss the need for sub-programmes and collections within programmed solutions. | Computational Thinking |
Construct algorithms using pre- defined sub-programmes, one- dimensional arrays and/or collections. | Computational Thinking |
Web science | |
Distinguish between the internet and World Wide Web (web). | |
Describe how the web is constantly evolving. | |
Identify the characteristics of the following: HTTP, HTTPS, HTML, URL, XML, XSLT, CSS. | |
Identify the characteristics of a uniform resource identifier (URI) URL. | |
Describe the purpose of a URL. | |
Describe how a domain name server functions. | |
Identify the characteristics of the internet protocol (IP) transmission control protocol (TCP) file transfer protocol (FTP). | |
Outline the different components of a web page. | |
Explain the importance of protocols and standards on the web. | |
Describe the different types of web page. | |
Explain the differences between a static web page and a dynamic web page. | |
Explain the functions of a browser. | |
Evaluate the use of client-side scripting and server-side scripting in web pages. | |
Describe how web pages can be connected to underlying data sources. | |
Describe the function of the common gateway interface (CGI). | |
Evaluate the structure of different types of web pages. | |
Define the term search engine. | |
Distinguish between the surface web and the deep web. | |
Outline the principles of searching algorithms used by search engines. | |
Describe how a web crawler functions. | |
Discuss the relationship between data in a meta-tag and how it is accessed by a web crawler. | |
Discuss the use of parallel web crawling. | |
Outline the purpose of web-indexing in search engines. | |
Suggest how web developers can create pages that appear more prominently in search engine results. | |
Describe the different metrics used by search engines. | |
Explain why the effectiveness of a search engine is determined by the assumptions made when developing it. | |
Discuss the use of white hat and black hat search engine optimization. | |
Outline future challenges to search engines as the web continues to grow. | |
Define the terms: mobile computing, ubiquitous computing, peer-2-peer network, grid computing. | |
Compare the major features of: mobile computing ubiquitous computing peer-2-peer network grid computing. | |
Distinguish between interoperability and open standards. | |
Describe the range of hardware used by distributed networks. | |
Explain why distributed systems may act as a catalyst to a greater decentralization of the web. | |
Distinguish between lossless and lossy compression. | |
Evaluate the use of decompression software in the transfer of information. | |
Discuss how the web has supported new methods of online interaction such as social networking. | |
Describe how cloud computing is different from a client-server architecture. | |
Discuss the effects of the use of cloud computing for specified organizations. | |
Discuss the management of issues such as copyright and intellectual property on the web. | |
Describe the interrelationship between privacy, identification and authentication. | |
Describe the role of network architecture, protocols and standards in the future development of the web. | |
Explain why the web may be creating unregulated monopolies. | |
Discuss the effects of a decentralized and democratic web. |