Quy trình phát triển phần mềm
Tầm nhìn của các quy trình

Do bản chất không thể nắm bắt cụ thể của các hệ thống phần mềm, các nhà quản lý quy trình phần mềm cần các báo cáo, các hồ sơ và xem xét để theo dõi tiến độ cũng như những gì xảy ra của công việc. Hầu hết các tổ chức phát triển các phần mềm lớn dùng kiểu quy trình "định hướng chuyển giao được". Mỗi thao tác phải kết thúc bằng một hồ sơ hay báo cáo nhằm làm cho quy trình phần mềm trở nên cụ thể hơn.
| x t sNhững lĩnh vực chính của khoa học máy tính |
| --- | --- |
Nền tảng toán học: Logic toán ·  Lý thuyết tập hợp ·  Lý thuyết số ·  Lý thuyết đồ thị ·  Lý thuyết kiểu ·  Lý thuyết thể loại ·  Giải tích số ·  Lý thuyết thông tin ·  Đại số ·  Nhận dạng mẫu ·  Nhận dạng tiếng nói ·  Toán học tổ hợp ·  Đại số Boole ·  Toán rời rạc
Lý thuyết phép tính: Độ phức tạp Kolmogorov ·  Lý thuyết Automat ·  Lý thuyết tính được ·  Lý thuyết độ phức tạp tính toán ·  Lý thuyết điện toán lượng tử
Cấu trúc dữ liệu  và giải thuật: Phân tích giải thuật ·  Thiết kế giải thuật ·  Hình học tính toán ·  Tối ưu hóa tổ hợp
Ngôn ngữ lập trình  và trình biên dịch: Bộ phân tích cú pháp ·  Trình thông dịch ·  Lập trình cấu trúc ·  Lập trình thủ tục ·  Lập trình hướng đối tượng ·  Lập trình hướng khía cạnh ·  Lập trình hàm ·  Lập trình logic ·  Lập trình máy tính ·  Lập trình mệnh lệnh ·  Lập trình song song ·  Lập trình tương tranh ·  Mô hình lập trình ·  Prolog ·  Tối ưu hóa trình biên dịch
Tính song hành,  song song,  và hệ thống phân tán: Đa xử lý ·  Điện toán lưới ·  Kiểm soát song hành ·  Hiệu năng hệ thống ·  Tính toán phân tán
Công nghệ phần mềm: Phân tích yêu cầu ·  Thiết kế phần mềm ·  Các phương pháp hình thức ·  Kiểm thử phần mềm ·  Quy trình phát triển phần mềm ·  Phép đo phần mềm ·  Đặc tả chương trình ·  LISP ·  Mẫu thiết kế ·  Tối ưu hóa phần mềm
Kiến trúc hệ thống: Kiến trúc máy tính ·  Tổ chức máy tính ·  Hệ điều hành ·  Cấu trúc điều khiển ·  Cấu trúc bộ nhớ lưu trữ ·  Vi mạch ·  Thiết kế ASIC ·  Vi lập trình ·  Vào/ra dữ liệu ·  VLSI design ·  Xử lý tín hiệu số
Viễn thông  và mạng máy tính: Audio máy tính ·  Chọn tuyến ·  Cấu trúc liên kết mạng ·  Mật mã học
Cơ sở dữ liệu  và hệ thống thông tin: Hệ quản trị cơ sở dữ liệu ·  Cơ sở dữ liệu quan hệ ·  SQL ·  Giao dịch ·  Chỉ số cơ sở dữ liệu ·  Khai phá dữ liệu ·  Biểu diễn và giao diện thông tin ·  Các hệ thống thông tin ·  Khôi phục dữ liệu ·  Lưu trữ thông tin ·  Lý thuyết thông tin ·  Mã hóa dữ liệu ·  Nén dữ liệu ·  Thu thập thông tin
Trí tuệ nhân tạo: Lập luận tự động ·  Ngôn ngữ học tính toán ·  Thị giác máy tính ·  Tính toán tiến hóa ·  Hệ chuyên gia  ·  Học máy ·  Xử lý ngôn ngữ tự nhiên ·  Robot học ·  Biểu diễn tri thức và suy luận
Đồ họa máy tính: Trực quan hóa ·  Hoạt họa máy tính ·  Xử lý ảnh
Giao diện người-máy tính: Khả năng truy cập máy tính ·  Giao diện người dùng ·  Điện toán mang được ·  Điện toán khắp mọi nơi ·  Thực tế ảo
Khoa học tính toán: Cuộc sống nhân tạo ·  Tin sinh học ·  Khoa học nhận thức ·  Hóa học tính toán ·  Khoa học thần kinh tính toán ·  Vật lý tính toán ·  Giải thuật số ·  Toán học kí hiệu
Chú ý: Khoa học máy tính còn có thể được chia thành nhiều chủ đề hay nhiều lĩnh vực khác dựa theo Hệ thống xếp loại điện toán ACM.
Phát triển phần mềm theo mô hình tiến hoá