Công nghệ phần mềm

Tóm lược về công nghệ phần mềm

Là một kỹ sư kiểm thử phần mềm chuyên nghiệp, bạn nên biết sơ lược lịch sử về công nghệ phần mềm, bởi vì kiểm thử phần mềm gắn liền với tất cả các giai đoạn của công nghệ phần mềm. Công nghệ phần mềm đã phát triển qua 4 giai đoạn: thập niên 50-60, giữa thập niên 60 đến cuối những năm 70, giữa thập niên 70 đến giữa những năm 80, và giữa thập niên 80 đến hiện tại. Mỗi giai đoạn đều có những đặc trưng riêng biệt của nó, nhưng trong những năm qua phần mềm đã tăng lên về số lượng và độ phức tạp. Một số vấn đề phổ biến với gần như tất cả các giai đoạn và sẽ được thảo luận dưới đây.

Công nghệ phần mềm

Cuộc khủng hoảng phần mềm những năm 1960 khi những lý do chính cho tình hình này là việc ứng dụng kỹ thuật phần mềm vào thực tiễn ít được chấp nhận. Trong giai đoạn đầu của công nghệ phần mềm, có rất nhiều sự quan tâm đến máy tính, rất nhiều đoạn mã lệnh được viết nhưng không được công bố một cách chuẩn mực. Sau đó, vào đầu thập niên 70 rất nhiều các chương trình máy tính bắt đầu ngừng hoạt động và người ta mất niềm tin, như vậy, một cuộc khủng hoảng đã được công bố. Vì nhiều lý do dẫn đến cuộc khủng hoảng bao gồm:
– Phần cứng tiến bộ nhanh hơn khả năng xây dựng phần mềm cho phần cứng này.
– Khả năng xây dựng ứng dụng không theo kịp với nhu cầu.
– Tăng cường sự phụ thuộc vào phần mềm.
– Cuộc đấu tranh để xây dựng phần mềm đáng tin cậy và chất lượng cao.
– Thiết kế yếu kém và các nguồn tài nguyên không tương xứng.

Dự án phần mềm cơ bản được coi là thất bại nếu dự án được chấm dứt vì chi phí (vượt quá 50% dự toán) hoặc ngày phát hành quá trễ so với dự định. Một số ví dụ về những thất bại bao gồm sự thất bại của hệ thống kiểm soát không lưu, thất bại của phần mềm y tế, và thất bại trong phần mềm viễn thông. Lý do chính cho những thất bại được đề cập ở trên là do áp dụng công nghệ phần mềm không tốt. Một số cách thức ứng dụng công nghệ phần mềm tồi tệ nhất bao gồm:
– Không có phần mềm đo lường dữ liệu quá khứ.
– Từ chối dự toán chi phí chính xác.
– Không sử dụng các công cụ tính toán và lập kế hoạch tự động.
– Gây áp lực quá mức, tiến độ bất hợp lý và không hiểu rõ các yêu cầu của người sử dụng.
– Thất bại trong việc theo dõi tiến độ và thực hiện quản lý rủi ro.
– Không sử dụng đánh giá thiết kế và kiểm tra mã.

Để tránh những thất bại và cải thiện kết quả, điều cần thiết là sự hiểu biết tốt hơn về quy trình, các kỹ thuật ước lượng tốt hơn cho chi phí, thời gian và các biện pháp đo lường chất lượng. Hiện nay, một số lượng lớn các vấn đề tồn tại do một quy trình phần mềm hỗn loạn và sự thành công không thường xuyên phụ thuộc vào nỗ lực cá nhân. Vì vậy để dự án phần mềm thành công, tập trung vào quy trình là cần thiết. Sự tập trung này sẽ giúp ích trong việc dự đoán kết quả, xu hướng dự án và đặc điểm của dự án. Các quy trình đã được xác định và thông qua cần phải được quản lý tốt và sau đó nó sẽ phát huy tác dụng.

Từ đây chúng ta kết luận rằng quy trình tốt có thể cứu dự án phần mềm khỏi thất bại. Cần lưu ý rằng quy trình một mình nó không thể giúp chúng ta tránh được tất cả các vấn đề, cần thay đổi quy trình để có thể thích ứng với những nhu cầu khác nhau, hoàn cảnh khác nhau. Vì vậy để thực hiện một sản phẩm thành công, một sự kết hợp giữa quy trình và công nghệ là cần thiết.

Sau khi nói về quy trình phần mềm tổng thể, việc xác định vai trò của kiểm thử phần mềm là quan trọng trong việc sản xuất phần mềm chất lượng. Định nghĩa thử nghiệm như sau: “Kiểm thử hay Thử nghiệm – Một phương pháp xác minh bằng cách sử dụng tập hợp những điều kiện có kiểm soát với mục đích tìm kiếm lỗi. Đây là phương pháp được ưa chuộng nhất để xác minh các yêu cầu chức năng và hiệu suất. Kết quả thử nghiệm là tài liệu chứng minh rằng các yêu cầu đã được đáp ứng và có thể được lặp đi lặp lại. Các dữ liệu kết quả có thể được xem xét bởi tất cả các bên có liên quan để xác nhận”

Có thể có nhiều định nghĩa về kiểm thử phần mềm và theo thời gian, nhưng tốt nhất hãy bắt đầu bằng cách định nghĩa kiểm thử và sau đó bổ sung tùy thuộc vào các yêu cầu hoặc nhu cầu.

Kiểm thử phần mềm