BSEH SS Computer Science study plan
BSEH SS Computer Science · Give each week a clear focus.
8 weeks · About 6 hours per week
Computer Fundamentals and Hardware & Number Systems and Data Representation
Label the internal components of a computer (CPU, ALU, control unit, registers, cache, RAM, ROM, buses) and state the function of each in one sentence
Distinguish primary from secondary storage and compare HDD, SSD, and optical media on speed, capacity, volatility, and typical use
Classify input and output devices and explain the role of device drivers in mediating hardware access
Convert between binary, octal, decimal, and hexadecimal by hand for at least 20 mixed numbers, showing the working
Perform 8-bit two's complement representation of signed integers and compute the range of values for n-bit signed and unsigned storage
Your checkpoint
A one-page hardware reference sheet plus a 20-item number-conversion worksheet solved with working shown, self-scored at 90% or better
Operating Systems and File Management & Problem Solving and Programming Fundamentals
Describe the boot sequence from power-on through firmware, bootloader, and kernel handoff, and name where each step can fail
Compare process scheduling, memory management, and virtual memory in terms of what problem each solves
Create, move, rename, delete, and set permissions on files and directories using both a GUI and command-line equivalents, and explain absolute versus relative paths
Write algorithms as pseudocode and as flowcharts for at least three everyday tasks, using sequence, selection, and iteration correctly
Trace a given algorithm by hand and predict its output for three different inputs, including one edge case
Your checkpoint
A folder tree built and documented (with a screenshot-free written path listing and permission table) plus three pseudocode-to-flowchart solutions with hand-traced outputs
Python Programming
Write and run Python programs that use variables, the four core data types, input/output with type casting, and formatted printing
Control program flow with if/elif/else, while, and for loops, including nested loops and break/continue
Define functions with positional, keyword, and default parameters, and explain local versus global scope with an example of each
Manipulate strings using slicing, indexing, and at least six built-in string methods
Handle runtime errors with try/except and identify the exception type raised by common mistakes such as int('abc')
Your checkpoint
A single Python file containing five working mini-programs (calculator, grade classifier, loop-based pattern printer, string utility, and a menu loop with input validation) that runs without unhandled errors
Python Programming & Data Structures: Lists, Stacks and Queues
Create, index, slice, append, insert, remove, and sort Python lists, and predict the result of each operation before running it
Implement a stack using a list with push, pop, peek, and isEmpty, and state the LIFO rule in your own words
Implement a queue with enqueue and dequeue, and explain why a naive list-based queue differs in cost from collections.deque
Trace stack and queue contents step by step for a given sequence of operations and give the final state
Convert a simple iterative solution into a function that uses a stack or queue, and justify the choice
Your checkpoint
A Python module implementing stack and queue classes with a test block that prints before/after state for at least eight operations, plus handwritten traces for two operation sequences
Database Concepts and SQL
Explain tables, rows, columns, primary keys, foreign keys, and candidate keys using a small schema you design yourself
Write SELECT queries with WHERE, ORDER BY, DISTINCT, and aggregate functions including GROUP BY and HAVING
Write inner and left joins across two or three tables and predict the row count of each result before executing
Classify SQL statements as DDL or DML and use CREATE, INSERT, UPDATE, and DELETE on a scratch database
Normalize a flat table to third normal form, stating the anomaly removed at each step
Your checkpoint
A scratch database with three related tables, at least 15 saved queries covering every clause listed, and a written normalization walkthrough from unnormalized to 3NF
Computer Networks and Internet & Web Technologies and HTML
Map the layers of the TCP/IP model to their functions and name one protocol at each layer
Distinguish IP addressing concepts: IPv4 versus IPv6, private versus public addresses, and the roles of DNS, DHCP, and NAT
Explain how a URL resolves to a rendered page, ordering the steps from DNS lookup through HTTP request and response
Write valid HTML using document structure, headings, lists, tables, links, and images, and use forms with common input types
Apply CSS selectors and the box model to style a page, and separate structure from presentation
Your checkpoint
A three-page linked website (home, table-based data page, form page) with external CSS, validated mentally against correct nesting rules and documented with a written request-to-render flow diagram in text form
Cyber Safety, Ethics and Emerging Technologies & Practical Work and Project
Identify phishing, malware, ransomware, and social engineering attacks and state one concrete preventive practice for each
Explain strong password and authentication practices, including multi-factor authentication and why password reuse is dangerous
Describe safe browsing and data protection habits: HTTPS indicators, permissions, backups, and handling personal data responsibly
Summarize the current state of at least three emerging technologies (for example AI, cloud computing, IoT, blockchain) with one realistic benefit and one risk each
Plan the practical project: define scope, list features, sketch the interface, and break work into tasks with time estimates
Your checkpoint
A written project plan (scope, feature list, task breakdown with estimates, test checklist) plus a one-page cyber-safety summary covering five threats with countermeasures
Python Programming & Database Concepts and SQL & Practical Work and Project
Build the project end to end, integrating Python logic with either a database or a styled web front end, and fix all errors found during testing
Write a short project report covering aim, design decisions, code or markup listing, test cases with expected versus actual results, and limitations
Complete two full-length timed practice papers under exam conditions and mark them against the domain weightings
Re-derive weak areas from the marked papers and redo at least 20 questions per weak domain until accuracy exceeds 80%
Recite from memory the key facts for each domain: unit conversions, SQL clause order, OSI/TCP-IP layers, HTML tag rules, and Python syntax traps
Your checkpoint
A finished, working project with a written report and test table, plus a scored record of two timed practice papers showing per-domain accuracy and the remediation done
Milestones
Week 2: Solve 20 mixed number-system conversions and 5 two's complement problems with at least 90% accuracy, and correctly trace 3 algorithms by hand without running code
Week 4: Run the five-program Python file and the stack/queue test block end to end with no unhandled exceptions, and match your handwritten traces to actual output for all eight operations
Week 6: Execute all 15 SQL queries against the scratch database and get the row counts you predicted, and open the three-page website with correct structure, working links, and external CSS applied
Week 8: Score at least 70% overall on both timed practice papers, with no single domain below 60%, and submit a completed project with report and test table