Phân tích hệ thống

Một phần của tài liệu Xây dựng hệ thống chăm sóc sức khỏe cho cán bộ, công chức ngành nông nghiệp theo công nghệ hướng đối tượng.PDF (Trang 30 - 35)

Phân tích hướng đối tượng là một giai đoạn của quá trình phát triển phần mềm, trong đó mô hình khái niệm được mô tả chính xác, súc tích thông qua các đối tượng thực và các khái niệm của bài toán ứng dụng.

Các đặc tả trên hệ thống sẽ được mô hình hóa bởi các khái niệm lớp, đối tượng và cơ chế diễn tả các hoạt động của hệ thống. Các lớp và các mối quan hệ giữa chúng được mô hình bằng biểu đồ lớp. Sự phối hợp của các lớp để thực hiện chức năng trong ca sử dụng được mô tả bằng các mô hình động trong UML.

Trong giai đoạn phân tích, chỉ mô tả những lớp phạm vi của vấn đề cần giải quyết, chứ không đi vào các chi tiết kỹ thuật của chúng. Nhiệm vụ người phân tích là nghiên cứu kỹ các yêu cầu của hệ thống, phân tích các thành phần của hệ thống cùng mối quan hệ của chúng. Trong khâu phân tích chủ yếu trả lời các câu hỏi:

– Hệ thống gồm thành phần bộ phận nào? – Hệ thống cần thực hiện những gì?

– Kết quả của pha phân tích là xây dựng được biểu đồ tuần tự, biểu đồ cộng tác và biểu đồ thành phần, biểu đồ trạng thái, biểu đồ lớp.

2.1.2.3. Thiết kế hệ thống

Trong giai đoạn thiết kế, các kết quả của quá trình phân tích được mở rộng thành một giải pháp kỹ thuật. Một số lớp mới được thêm vào để cung cấp các cơ sở hạ tầng kỹ thuật mhư: lớp giao diện người sử dụng, lớp cơ sở dữ liệu v.v... Trong khâu thiết kế hệ thống hướng đối tượng chủ yếu trả lời câu hỏi: làm như thế nào?

– Trong hệ thống có những lớp đối tượng và trách nhiệm của chúng là làm gì? – Các đối tượng tương tác với nhau như thế nào?

– Các nhiệm vụ nào mà mỗi lớp phải thực hiện?

Qua đó, chúng ta thấy nhiệm vụ chính của hệ thống thiết kế hệ thống là:

– Xây dựng các thiết kế chi tiết mô tả các thành phần của hệ thống ở mức cao hơn để phục vụ cho việc cài đặt.

– Đưa ra được kiến trúc của hệ thống để đảm bảo cho hệ thống có thể thay đổi, có tính mở, dễ bảo trì, thân thiện với người sử dụng v.v.

Kết quả trên được thể hiện trong các biểu đồ: biểu đồ hành động, biểu đồ thành phần, và biểu đồ triển khai, biểu đồ lớp. Kết quả nhất thiết quả phải được ghi lại các hồ sơ, tài liệu cho hệ thống.

2.1.2.4. Lập trình

Các lớp của bước thiết kế sẽ được chuyển thành mã nguồn theo một ngôn ngữ lập trình hướng đối tượng như: C++, Java, .NET v.v.

Trong giai đoạn này mỗi công việc đã được thiết lập thành những module chương trình. Sau đó các module chương trình này sẽ được kiểm tra, được tích hợp với nhau thành hệ thống tổng thể và nó sẽ được kiểm tra xem có đáp ứng các yêu cầu của khách hàng hay không. Kết thúc pha này là phần mềm cần phải xây dựng.

Có 4 hình thức kiểm tra hệ thống:

– Kiểm tra từng đơn thể được dùng để kiểm tra các lớp hay các nhóm đơn.

– Kiểm tra tính tích hợp được kết hợp với các thành phần và các lớp để kiểm tra xem chúng hoạt động có khớp với nhau không.

– Kiểm tra hệ thống xem có đáp ứng nhu cầu mà khách hàng yêu cầu không. – Kiểm tra tính chấp nhận được, việc kiểm tra này được thực hiện bởi khách hàng.

2.1.2.5. Vận hành và bảo trì hệ thống

Hệ thống phần mềm phải được nâng cấp, hoàn thiện liên tục nhằm nâng cao hiệu quả của hệ thống như các thay đổi để cải thiện hiệu quả công việc, bổ sung thêm các chức năng hay giảm thời gian xử lý. Đảm bảo sự thích nghi với sự thay đổi của chính sách, quy chế, quy trình, nghiệp vụ mới.

2.1.3. Mô hình khái niệm UML

2.1.3.1 Các phần tử cấu trúc

- Lớp là sự mô tả tập hợp các đối tượng có chung thuộc tính, thao tác, quan hệ và ngữ nghĩa. Một lớp triển khai một hay nhiều giao diện. Một lớp được biểu diễn bằng một hình chữ nhận bên trong có tên, các thuộc tính và các tác vụ.

- Giao diện là tập hợp các thao tác làm dịch vụ của lớp hay một thành phần. Giao diện mô tả toàn bộ hay một phần các hành vi của một lớp hoặc một thành phần. Giao diện định nghĩa tập đặc tả thao tác chứ không định nghĩa vài đặt của chúng. Giao diện thường không đứng một mình mà được gắn vào lớp hay thành phần thực hiện giao diện.

- Phần tử cộng tác là mô tả ngữ cảnh của tương tác. Phần tử cộng tác thể hiện một giải pháp thi hành bên trong hệ thống, bao gồm lớp, quan hệ và tương tác giữa chúng để đạt được một chức năng mong đợi trong UC.

- Ca sử dụng mô tả một tập hợp các dãy hành động mà hệ thống thực hiện đem lại một kết quả cho một tác nhân cụ thể. Tập hợp các UC của hệ thống sẽ hình thành các trường hợp mà hệ thống được sử dụng.

- Lớp tích cực là lớp có đối tượng làm chủ một hay nhiều tiến trình hay luồng.

- Thành phần: thành phần biểu diễn vật lý mã nguồn, các tệp nhị phân trong qua trình phát triển hệ thống.

- Nút là một phần tử vật lý tồn tại trong thời gian thực và biểu diễn một tài nguyên tính toán.

2.1.3.2. Các phần tử hành vi:

- Tương tác: là hành vi bao gồm tập các thông điệp trao đổi giữa các đối tượng trong ngữ cảnh cụ thể dể thực hiện mục đích cụ thể. Hành vi của nhóm đối tượng hay của mỗi thao tác có thể chỉ ra bằng tương tác.

- Máy trạng thái là hành vi chỉ ra trật tự các trạng thái mà đối tượng hay tương tác sẽ đi qua để đáp ứng sự kiện.

- Phụ thuộc: là quan hệ ngữ nghĩa giữa hai phần tử trong đó thay đổi phần tử độc lập sẽ tác động đến ngữ nghĩa của phần tử phụ thuộc.

- Sự kết hợp: là quan hệ cấu trúc để mô tả tập liên kết. Khi đối tượng của lớp này gửi/nhận thông điệp đến/từ đối tượng của lớp kia thì ta gọi chúng là có quan hệ kết hợp.

- Khái quát hóa: là quan hệ đặc biệt hóa/ khái quát hóa mà trong đó đối tượng cụ thể sẽ kế thừa các thuộc tính và phương pháp của đối tượng tổng quát.

- Hiện thực hóa: là quan hệ ngữ nghĩa giữa giao diện và lớp thực hiện, giữa UC và hợp tác hiện thực UC.

2.1.3.4 Các biểu đồ trong UML

- Biểu đồ UseCase: chỉ ra sự tương tác giữa các UC và các tác nhân. UC biểu diễn các chức năng hệ thống. Tác nhân là con người hay hệ thống khác cung cấp hay thu nhận thông tin từ hệ thống đang được xây dựng. Biểu đồ UC tập trung vào quan sát trạng thái tĩnh của các UC trong hệ thống. Vì UC biểu diễn yêu cầu hệ thống từ góc độ người dùng cho nên UC là chức năng mà hệ thống phải có.

- Biểu đồ trình tự: Biểu đồ trình tự chỉ ra luồng chức năng xuyên qua các UC, nó là biểu đồ mô tả tương tác giữa các đối tượng và tập trung vào mô tả trật tự các thông điệp theo thời gian.

- Biểu đồ cộng tác: Biểu đồ cộng tác chỉ ra các thông tin như biểu đồ trình tự nhưng theo cách khác, nó tập trung vào tổ chức cấu trúc của các đối tượng gửi và nhận thông điệp.

- Biểu đồ lớp: Biểu đồ lớp chỉ ra sự tương tác giữa các lớp trong hệ thống. Các lớp được xem như kế hoạch chi tiết của các đối tượng. Mỗi lớp trong biểu dồ lớp được tạo ra cho mỗi loại đối tượng trong biểu đồ trình tự và cộng tác.

- Biểu đồ chuyển trạng thái: Mô tả vòng đời của đối tượng từ khi no được sinh ra đến khỉ bị phá hủy. Biểu đồ chuyển trạng thái cung cấp cách thức mô hình hóa các trạng thái khác nhau của đối tượng.

- Biểu đồ thành phần: Biểu đồ thành phần cho ta cái nhìn vật lý của mô hình. Biểu đồ thành phần cho ta thấy các thành phần phền mềm trong hệ thống và quan hệ giữa chúng.

2.1.4. Kiến trúc hệ thống:

Kiến trúc phần mềm cho ta một cái nhìn khái quát nhất về hệ thống phần mềm ở các góc độ khác nhau. Như minh hoạ ở hình 2-1, kiến trúc của hệ thống phần mềm chuyên sâu được mô tả tốt bằng năm loại khung nhìn tương tác với nhau. Mỗi khung

nhìn phản ánh về một khía cạnh của tổ chức và cấu trúc của hệ thống mà tập trung vào từng mặt cụ thể giúp cho ta hiểu và sử dụng hệ thống tốt nhất.

Hình 2.1 Mô hình hóa kiến trúc hệ thống

2.1.4.1 Khung nhìn UC

Khung nhìn này đứng trước mọi khung nhìn khác. Nó được hình thành từ giai đoạn phân tích yêu cầu và được sử dụng để điều khiển và thúc đẩy công việc còn lại của thiết kế. Nó mô tả các hành vi hệ thống theo các nhìn của khách hàng, phân tích viên và kỹ sư kiểm tra, kiểm thử.

2.1.4.2 Khung nhìn thiết kế

Bao gồm các lớp, các giao diện, các cộng tác tạo nên từ vựng của vấn đề và các giải pháp cho nó. Khung nhìn này chủ yếu hỗ trợ việc xác định yêu cầu chức năng của hệ thống, nghĩa là các dịch vụ mà hệ thống nên cung cấp cho người dùng cuối cùng. Mặt tĩnh của khung nhìn này được nắm bắt trong biểu đồ lớp, biểu đồ đối tượng, mặt động được nắm bắt trong biểu đồ tương tác, biểu đồ hoạt động và biểu đồ trạng thái.

2.1.4.3 Khung nhìn tiến trình

Chứa đựng các chuỗi và tiến trình mà tạo nên cơ chế tương tranh và đồng bộ của hệ thống. Khung nhìn này chủ yếu diễn đạt sự hoàn thiện, tính quy mô, số lượng vào của hệ thống. Với UML, mặt tĩnh và động khung nhìn này cũng được nắm bắt trong các loại biểu đồ giống như khung nhìn thiét kế nhưng chú trọng vào biểu đồ lớp hoạt động biểu diễn các dãy và các tiến trình.

2.1.4.4 Khung nhìn triển khai

Bao gồm các thành phần và các file được dùng để sát nhập và đưa ra các hệ thống vật lý. Khung nhìn này trước hết hướng đến quản lý cấu hình hệ thống, được tạo ra từ các thành phần độc lập và các file có thể sát nhập theo nhiều cách khác nhau để sản xuất ra một hệ thống vận hành. Với UML, mặt tĩnh được nắm bắt trong biểu đồ thành phần, mặt động được nắm bắt trong biểu đồ tương tác, biểu đồ trạng thái và biểu đồ lớp hoạt động.

Bao gồm các nút của hệ thống tạo nên kết cấu phần cứng mà trên đó hệ thống chạy. Khung nhìn này chủ yếu hướng đến sự phân tán và bố trí của hệ thống. Mặt tĩnh của khung nhìn này được nắm bắt trong biểu đồ bố trí, mặt động của khung nhìn này được nắm bắt trong biểu đồ tương tác, biểu đồ trạng thái và biểu đồ hoạt động.

2.1.5. Khả năng sử dụng UML

Mục tiêu của UML là để mô tả bất kỳ loại hệ thống nào bằng biểu đồ hướng đối tượng. Đặc tính của các hệ thống đó được tóm tắt như sau:

 Các hệ thống thông tin: Lưu trữ, truy vấn, biểu diễn thông tin. Quản lý số lượng

thông tin lớn có quan hệ phức tạp trong CSDL quan hệ hay CSDL hướng đối tượng.

 Các hệ thống kỹ thuật: Quản lý và điều khiển các thiết bị kỹ thuật như truyền

tin, hệ thống quân sự, dây truyền công nghiệp. Thông thường phải quản lý các giao diện người sử dụng đặc biệt, không có phần mềm chuẩn. Các hệ thống lớn này phần lớn là hệ thống thời gian thực.

 Các hệ thống nhúng thời gian thực: Thực hiện trên phần cứng đơn giản nhúng

trong các thiết bị khác nhau như điện thoại di động, xe ô tô các dụng cụ gia đình...Các hệ thống này thường thiếu thiết bị như màn hình, ổ đĩa...

 Các hệ thống phân tán: Phân tán trên nhiều máy. Đòi hỏi cơ chế giao tiếp đồng

bộ để đảm bảo toàn vẹn dữ liệu.

 Các phần mềm hệ thống: Xác định hạ tầng kỹ thuật để triển khai phần mềm khác sử dụng như hệ điều hành, CSDL...

 Các hệ thống thương mại: Mô tả mục tiêu, tài nguyên (con người, máy tính..) và

các qui luật (chiến lược thương mại, luật...) và qui trình thương mại

Tuy nhiên ngày nay một hệ thống thường thuộc nhiều loại tổ hợp của các hệ thống kể trên, nhưng ta vẫn có khả năng sử dụng UML để mô hình hóa chúng.

2.2. Phân tích hệ thống

Một phần của tài liệu Xây dựng hệ thống chăm sóc sức khỏe cho cán bộ, công chức ngành nông nghiệp theo công nghệ hướng đối tượng.PDF (Trang 30 - 35)

Tải bản đầy đủ (PDF)

(110 trang)