Quy trình phát triển phần mềm

Vòng Đời Phát Triển Phần Mềm (SDLC) Là Gì ?

Body
Một vòng đời phát hành phần mềm là một sự tổng hợp các pha phát triển phần mềm từ giai đoạn sơ khai cho đến giai đoạn hoàn chỉnh, và cuối cùng là công bố phần mềm đó hoặc phiên bản nâng cấp mới. Việc chia thành nhiều giai đoạn như vậy giúp cho việc quản lý, sửa lỗi và bảo trì phần mềm dễ dàng hơn.

Terms of reference (ToR - Phụ lục tham chiếu) là gì?

Body
ToR là một loại tài liệu chính thức (formal document), nhưng chúng thường không quá dài dòng; xác định mục đích và cấu trúc của 1 dự án, thảo luận, meeting hay hội đồng hoặc bất cứ một tập hợp tương tự những người làm việc chung với nhau để hoàn thành các mục tiêu chung.

Lợi ích và hạn chế của phát triển bản mẫu (prototype)

Body

Đối với các hệ thống phức tạp, nhiều khi chúng ta không nắm chắc được yêu cầu của khách hàng, chúng ta cũng khó đánh giá được tính khả thi cũng như hiệu quả của hệ thống. Một cách tiếp cận đối với trường hợp này là xây dựng bản mẫu. Bản mẫu vừa được dùng để phân tích yêu cầu vừa có thể tiến hóa thành sản phẩm cuối cùng. Bản mẫu phần mềm hoàn toàn khác với bản mẫu phần cứng. Khi phát triển các hệ thống phần cứng, thì thực tế người ta phát triển một bản mẫu hệ thống để thẩm định thiết kế hệ thống.

Mô hình thác nước là gì và khi nào nên sử dụng ?

Body

Lần đầu tiên được được đưa ra bởi tiến sĩ Winston W.Royce trong một bài báo công bố vào năm 1970, Mô hình thác nước diễn tả một quá trình phát triển phần mềm. Mô hình thác nước chú trọng vào sự tiến triển logic của các bước được thực hiện trong suốt vòng đời phát triển của một phần mềm(software development life cycle-SDLC), giống như các bước mà một dòng nước đổ xuống một dòng thác .

Mô hình hóa với sơ đồ luồng dữ liệu (Data Flow Diagram - DFD)

Body
Sơ đồ luồng dữ liệu (tiếng Anh: Data Flow Diagram, viết tắt: DFD) chỉ ra cách thông tin chuyển vận từ một tiến trình hoặc từ chức năng này trong hệ thống sang một tiến trình hoăc chức năng khác.

Quy trình phát triển phầm mềm hiện đại Scrum

Body
Scrum phù hợp cho những dự án có nhiều sự thay đổi và yêu cầu tốc độ cao. Scrum được thiết kế để tối ưu hóa sự hài lòng của nhóm và năng suất, chất lượng sản phẩm, khả năng đáp ứng với khách hàng và tính minh bạch cho các bên liên quan. Tất cả các sự thỏa mãn đó đều diễn ra theo các dòng chảy của quy luật tự nhiên: tăng trưởng, tiến hóa, rồi lại tăng trưởng, tiến hóa... 

Làm thế nào để ứng phó với các Requirement Changes dạng "lông gà vỏ tỏi" (Volatile Requirements)

Các thông tin dạng "lông gà vỏ tỏi" là những thông tin ít chắc chắn nhất, dễ bay (nghĩa đen). Làm sao để nhận dạng các thông tin này?

Requirement changes thường xảy ra ở các nghiệp vụ Backend, hiếm khi xảy ra ở Front-end. Bạn cần thống nhất các workflows trên Frontend càng sớm càng tốt, chỉ để lại "gap" ở nghiệp vụ chuyên sâu. Nên nhớ rằng một đứa trẻ sinh ra thì đã có khung xương và giao diện bên ngoài (da, mắt, mũi...) ở mức cơ bản, những đường nét chủ đạo sẽ đi theo đứa trẻ cho đến hết cuộc đời.

Giới thiệu eXtreme Programming

Body
Trong thời đại ngày nay, dần dần mô hình quản lý dự án truyền thống Waterfall dần bị thay thế bởi những mô hình Agile, khi mà dự án cần sự linh hoạt cao, đáp ứng được tốt hơn yêu cầu của khách hàng ngày càng khó tính. Ngoài scrum là một mô hình Agile rất phổ biến, bài viết này sẽ đề cập đến Extreme Programming, một mô hình cũng dần phổ biến bởi nhiều đặc tính nổi trội của nó. Vậy Extreme Programming là gì, chúng ta hãy cùng tìm hiểu.