Kiến trúc hệ thống

GS John Vu27/03/2026 13:00
Kiến trúc hệ thống

Theo nhiều nghiên cứu, dự án phần mềm càng lớn, cơ hội thành công sẽ càng ít bởi vì độ phức tạp vượt quá khả năng của người phát triển để hiểu nó.

Chìa khoá cho thành công phụ thuộc vào khả năng của kiến trúc sư hệ thống phân rã các yêu cầu thành các nhiệm vụ nhỏ hơn để cho những người phát triển có thể hiểu và có khả năng thực hiện chúng. Khi người phát triển đã hoàn thành, những việc này có thể được tích hợp vào trong hệ thống lớn tương ứng với kiến trúc đã xác định.

Kiến trúc tốt phải làm chi tiết mọi giao diện, chức năng, và cơ chế kiểm soát tách biệt để cho nó có thể linh hoạt, dễ dàng thay đổi. Nếu được thực hiện đúng, nó cho phép người phát triển tập trung vào nhiệm vụ riêng mà không cần hội tụ vào giao diện, luồng dữ liệu, và các chức năng hệ thống khác. Nếu được làm tài liệu tốt, nó giảm nhu cầu điều phối giữa các chức năng tổ khác nhau (người phát triển, người kiểm thử, đảm bảo chất lượng, quản lí cầu hình) nhưng nếu được thực hiện kém, nó sẽ là những biện luận không bao giờ dứt, lẫn lộn, và nhiều vấn đề tích hợp.

Kiến trúc chảy từ yêu cầu tới đặc tả chức năng. Do đó, yêu cầu phải đúng đắn, đầy đủ và không mơ hồ. Yêu cầu được xác định kém sẽ dẫn tới kiến trúc kém và kiến trúc kém sẽ làm tăng vấn đề trong các dự án lớn. Thu lấy yêu cầu là trách nhiệm then chốt của kiến trúc sư hệ thống. Người đó phải làm việc với đại diện khách hàng như người quản lí kinh doanh để nhận diện nhu cầu và mục đích của hệ thống. Kiến trúc sư hệ thống là giao diện giữa người dùng và người phát triển bởi vì người dùng không biết cách giải thích nhu cầu của mình theo cách người phát triển hiểu, và người phát triển không biết về qui trình nghiệp vụ để hỏi câu hỏi đúng. Để giảm rủi ro trong dự án lớn, kiến trúc sư hệ thống phải xây dựng bản mẫu để kiểm nghiệm các yêu cầu với khách hàng. Làm bản mẫu là qui trình xây dựng “mô hình hệ thống” bởi vì nó chuyển các yêu cầu vô hình thành mô hình làm việc hữu hình nhưng bị giới hạn của hệ thông tin mong muốn. Kiến trúc sư hệ thống trao đổi với người phát triển bằng việc xác định các mô tả “hộp đen” về các nhiệm vụ. Hộp đen là các thực thể trừu tượng có thể được hiểu, và được thực hiện một cách độc lập với phần còn lại của hệ thống. Qui trình xây dựng mô hình hộp đen được gọi là “trừu tượng hoá”. Trừu tượng hoá được dùng để đơn giản hoá thiết kế của hệ thống phức tạp bằng việc giảm bớt số chi tiết phải được xét tới. Về căn bản, kiến trúc sư giải thích cho người phát triển cái gì cần thực hiện, nhưng không nói về làm sao thực hiện nó.

Người phát triển phải hội tụ vào xây dựng phần mềm tin cậy được và không có lỗi. Để giảm thiếu số lỗi, họ phải tuân theo qui trình được xác định bằng việc dùng các thực hành và công cụ tốt nhất có thể giúp cho họ tìm ra các lỗi sớm trong kiểm điểm và kiểm thử. Người phát triển cũng cần đo công việc của họ để đảm bảo chất lượng phần mềm. Bằng việc có cách đo, người phát triển có phản hồi hữu dụng về công việc của mình và cung cấp tái đảm bảo cho kiến trúc sư hệ thống, người quản lí dự án và người dùng rằng phần mềm có chất lượng cao.

Phát triển dự án lớn có chất lượng là không dễ dàng. Nó yêu cầu kỉ luật mạnh, làm việc tổ và nhiều phối hợp. Nó cũng yêu cầu sự hỗ trợ quản lí mạnh trong việc hiểu công việc gian nan và cho người phát triển nhiều thời gian hơn để thiết kế và kiểm thử công việc của họ. Phần lớn các dự án lớn đều rất phức tạp cho nên yếu tố then chốt là kiến trúc tốt và quản lí dự án chắc. Những kĩ năng này khó tìm được bởi vì đào tạo ngày nay vẫn hội tụ vào khía cạnh lập trình chứ KHÔNG vào khía cạnh thiết kế và khía cạnh quản lí. Rất ít trường dạy kiến trúc, thiết kế và quản lí dự án mà chỉ dạy ngôn ngữ lập trình và đó là lí do tại sao nhiều công ti thành công với các dự án nhỏ nhưng KHÔNG thành công với các dự án lớn. Kiến trúc phần mềm và hệ thống là khó dạy vì nó yêu cầu nhiều kinh nghiệm trong thế giới thực. Bạn không thể học được nó từ sách vở hay theo lớp học mà phải thực nghiệm nó trong thế giới thực, đặc biệt trong các dự án lớn. Cách tốt nhất để học về kiến trúc là trở thành phụ tá cho kiến trúc sư hệ thống, việc “đào tạo trong công việc” này sẽ là tốt cho người phát triển có vài năm kinh nghiệm. Một khi bạn kinh nghiệm điều đó và có tri thức cơ sở nào đó về nó thì bạn có thể lấy vài lớp học để làm mạnh thêm tri thức của bạn và học thêm về các phong cách khác, các cách tiếp cận khác. Chỉ khi bạn đã làm chủ những kĩ thuật này thì bạn mới có thể xin vào làm chức vụ kiến trúc sư. Nhớ rằng người phát triển xây dựng công việc của họ dựa trên kiến trúc và chính kiến trúc xác định liệu dự án có thành công hay không.

English version

System Architecture

According to several studies, the larger the software project, the less chance of success it will have because the complexity exceeds the developer’ ability to comprehend it. The key for success depends on the ability of the system architect to decompose requirements into smaller tasks so that developers can understand and be able to implement them. When developers finished, these tasks can be integrated into the large system according to the defined architecture.

A good architecture must detail all interfaces, functions, and control mechanisms separately so it can be flexible, easy to change. If done correctly, it allows developers to concentrate on specific task without the need to focus on interfaces, data flow, and other system functions. If documented well, it reduces the need for coordination between different team functions (Developers, testers, quality assurance, configuration management) but if done poorly, it will be a never-ending arguments, confusions, and lots of integration problems.

Architecture flows from the requirements to functional specification. Therefore, requirements must be correct, complete, and unambiguous. A poorly defined requirements will lead to bad architecture and bad architecture will increase problems in large projects. Obtaining requirements is the key responsibility of the system architect. He must work with the customers representative such as the Business manager to identify the needs and the system’s goals. The system architect is the interface between users and developers because users do not know how to explain their needs in the way that developers understand, and developers do not know about business process to ask the right questions. To reduce the risk in large project, the system architect must build prototypes to validate the requirements with customers. Prototyping is the process of building a “model of the system” because it converts the intangible requirements into a tangible but limited working model of the desired information system.The system architect communicates to developers by specifying “black-box” descriptions of the tasks. Black boxes are abstract entities that can be understood, and implemented independently from the rest of the system. The process of building black-box models is called “abstraction”. Abstraction is used to simplify the design of a complex system by reducing the number of details that must be considered. Basically, the architect explain to developers what to implement, but not how to implement it.

Developers must focus on building software that are dependable and free from defects. To minimize number of defects, they must follow the project’s defined process using best practices and tools that can help them to find defects early during reviews and tests. Developers also need to measure their works to ensure software quality. By having measurements, developers are having useful feedback on their works and provides reassurance to the system architect, project manager and users that the software is of high quality.

Developing large project with quality is not easy. It requires strong discipline, teamwork, and lot of coordination. It also require a strong management supports in understanding the hard works and giving developers more time to design and test their works. Most large projects are very complex so the key factor is a good architecture and strong project management. These skills are hard to find because the training today is still focusing on the programming aspect NOT the designing aspect and management aspect. Very few schools teach architecture, design and project management but only programming languages and that is why many companies are successful with small projects but NOT large projects. Software and system architecture are difficult to teach as it requires a lot of experiences in real works. You can not learn it from books or take a class but must experiencing it in real projects, especially large projects. The best way to learn about architecture is to be an assistant to the system architect, this “On the job training” would be good to developers that have several years of experiences. Once you experiencing it and have some basic knowledge about it then you can take few classes to strengthen your knowledge and learn more about different styles, different approaches. Only when you have mastered these techniques then you could apply for the system architect position. Remember that developers build their works upon the architecture and it is the architecture that determines whether the project will be successful or not.

 


Gửi bình luận
(0) Bình luận
1

Đối thoại với sinh viên ở Vô Tích, Trung Quốc

Tháng trước khi tôi tới dạy ở Vô Tích, Trung Quốc, một sinh viên nói với tôi: “...Điều tốt hơn có lẽ là thầy đọc bài giảng về điều chúng em cần chứ không phải là cái gì đó quá tiên tiến mà có thể tốt ở Mĩ nhưng không tốt ở Trung Quốc.”
2

Thiếu hụt kỹ năng công nghệ thông tin

Trong vài năm qua, vấn đề thiếu hụt kĩ năng CNTT thường được nhắc tới ở Mĩ và nó làm khuấy động nhiều cuộc tranh cãi.
3

Cách học tốt hơn

Ngày nay sinh viên đại học có nhiều sao lãng ngăn cản họ học tập.
4

Qui trình đơn giản cho dự án nhỏ

Hôm qua, một sinh viên đã tốt nghiệp vài năm trước tới gặp tôi. Anh ta nói: “Em cần lời khuyên của thầy để thiết lập qui trình tốt nhằm phát triển phần mềm có chất lượng với chi phí thấp nhất có thể được."
5

Tại sao học công nghệ tính toán?

Một người mẹ hỏi tôi: “Tại sao thầy cổ vũ học công nghệ tính toán? Con gái tôi sẽ tốt nghiệp phổ thông năm nay và nó quan tâm tới khu vực công nghệ. Chọn lựa của nó là gì?”

Kỹ sư phần mềm Ấn Độ

Tuần trước, tôi đã ở Ấn Độ và đã có cơ hội thảo luận về giáo dục và đào tạo phần mềm với nhiều bạn bè ở đó.

Công nghiệp công nghệ của Ấn Độ

Tuần trước tôi đã ở Ấn Độ để tiến hành nghiên cứu về xu hướng phần mềm toàn cầu.

Phương pháp quản lý dự án mới

Có nhiều nghiên cứu chỉ ra rằng phần lớn các dự án phần mềm thất bại KHÔNG phải bởi vì vấn đề công nghệ mà bởi vấn đề quản lí.

Thay đổi công nghệ

Sự phát triển của công nghệ thông tin trong ba mươi năm qua đã tạo ra thay đổi lớn trong nhiều công ti nhưng cũng đặt ra thách thức khi họ cần đảm bảo rằng người của họ có kĩ năng đúng để chuyển giao sản phẩm và dịch vụ có chất lượng.

Lãnh đạo kỹ thuật

Lãnh đạo kĩ thuật là một kĩ năng KHÔNG được dạy trong đại học. Nó là một trong những kĩ năng bạn phát triển chỉ theo thời gian và kinh nghiệm.

Trường dạy quản lý hệ thông tin

Tôi nhận được một email người gửi viết: “Tôi rất quan tâm tới một chương trình mới có tên là Quản lý hệ thông tin (ISM). Thầy có thể nói thêm cho tôi về nó được không và trường nào là tốt nhất trong lĩnh vực này?”

Chất lượng phần mềm

Tôi nhận được một email hỏi: “Ai chịu trách nhiệm về chất lượng phần mềm? Điều đó phải thuộc về người đảm bảo chất lượng phần mềm bởi vì đó là việc của họ hay thuộc về người kiểm thử, người phải kiểm tra chất lượng? Làm sao tôi đo được chất lượng của sản phẩm phần mềm?”

Tìm việc

Trong thị trường việc làm đầy cạnh tranh ngày nay, tri thức và kĩ năng là quan trọng hơn bao giờ hết.

Thế giới trong giọt nước - Khi những người tử tế không đồng ý với nhau

Trong "Thế giới trong giọt nước", Regina Linke không đặt các nhân vật trước lựa chọn giữa thiện và ác. Họ đều muốn giúp một con chim sẻ bị thương, nhưng lại không thống nhất về cách giúp. Cũng từ những bất đồng ấy, câu chuyện không còn chỉ nói về lòng tốt.

Công nghệ cao

Blog GS John VU - GS John Vu - 31/07/2026 11:00
Trong bài diễn văn hàng năm với quốc hội Mĩ để báo cáo về hoàn cảnh quốc qua và nêu đại cương kế hoạch mà chính phủ Mĩ muốn theo đuổi trong tương lai, tổng thống Barack Obama đã làm nổi bật tiềm năng cho tạo việc làm trong các lĩnh vực công nghệ sinh học và công nghệ thông tin.

Giới khoa học chụp não người đang toan tính trả thù và phát hiện ra thứ đáng sợ hơn cả ma túy

Suy ngẫm - Long Vân - 31/07/2026 10:00
"Quân tử trả thù mười năm chưa muộn", câu nói cửa miệng quen thuộc hóa ra không chỉ đơn thuần là một triết lý sống. Dưới lăng kính của thần kinh học hiện đại, nó là mô tả chính xác về một chu kỳ gây nghiện đáng sợ.

Nhạc sĩ Trần Tiến đi xe ôm lên tận đỉnh núi, ước mơ bỏ hết thế gian

Phong cách sống - Tùng Ninh - 31/07/2026 09:00
"Tôi đi 43 nước, không nước nào thân yêu bằng Việt Nam" – nhạc sĩ Trần Tiến nói.

Thế giới trong giọt nước - Khi những người tử tế không đồng ý với nhau

Từ sách - Phim - Quang Anh - 31/07/2026 08:00
Trong "Thế giới trong giọt nước", Regina Linke không đặt các nhân vật trước lựa chọn giữa thiện và ác. Họ đều muốn giúp một con chim sẻ bị thương, nhưng lại không thống nhất về cách giúp. Cũng từ những bất đồng ấy, câu chuyện không còn chỉ nói về lòng tốt.

Bạn có thể tìm thấy bao nhiêu khuôn mặt trong bức ảnh

Thư giãn - Tr. Quang - 30/07/2026 11:00
Chúng vô cùng khó tìm. Người ta nói rằng chỉ những người có khả năng quan sát cực kỳ tinh tường mới có thể tìm thấy chúng. Liệu bạn có phải là một trong số họ?

Người EQ cao vay tiền như thế nào?

Kỹ năng - Hà Nguyên - 30/07/2026 10:00
Ai cũng có lúc cần vay tiền để giải quyết một việc cấp bách. Nhưng điều khiến một người được tin tưởng không nằm ở số tiền họ vay, mà ở cách họ mở lời, giữ cam kết và ứng xử với khoản tiền mình đang mượn. Đó cũng là một biểu hiện của EQ tài chính.

Hành trình 3.000 km vượt sa mạc đến chiếc huy chương World Cup trên cổ của mẹ Nico Williams

Truyền cảm hứng - Minh Ngọc - 30/07/2026 09:00
Sau khi Tây Ban Nha bước lên ngôi vô địch, cầu thủ 24 tuổi của La Roja đã nhìn lên khán đài rồi tiến thẳng về phía mẹ mình - bà Maria, ôm bà thật chặt rồi tháo chiếc huy chương vô địch vừa nhận được để đeo lên cổ người phụ nữ đã đứng khóc suốt trận đấu.

'Sức mạnh của Đạo' - khi người bận rộn học cách không cản đường chính mình

Từ sách - Phim - Minh Nguyệt - 30/07/2026 08:00
Có những cuốn sách đổi đời người ta không phải bằng một chân lý lớn, mà bằng một tai nạn nhỏ. Với Max Landsberg, đó là một mảnh gỗ nhỏ mắc trong cổ họng vào một tối thứ Sáu — và ba mươi năm để hiểu vì sao mình lại ngồi ăn pizza kiểu ấy.

Lập kế hoạch dự án phần mềm

Blog GS John VU - GS John Vu - 29/07/2026 11:00
Một người phát triển phần mềm tới gặp tôi: “Tôi được đề bạt làm quản lí một dự án nhỏ. Ông chủ của tôi bảo tôi hội tụ vào viết mã chứ KHÔNG lập kế hoạch bởi vì lập kế hoạch là phí thời gian. Viết mã sẽ cho tổ nhiều thời gian hơn để hoàn thành dự án. Câu hỏi của tôi là làm sao lập kế hoạch cho dự án mà không phí thời gian và vẫn đạt tới thành công?”

Vì sao người Mỹ vẫn yêu quý Phạm Xuân Ẩn

Phong cách sống - Tô Giang - 29/07/2026 09:00
Giáo sư Larry Berman là tác giả "Perfect Spy", cuốn sách được độc giả Việt Nam biết đến với tên gọi "X6 - Điệp viên hoàn hảo" viết về Thiếu tướng tình báo Phạm Xuân Ẩn.

'Sức mạnh của Đạo': Lý - Nhận ra các khuôn mẫu để biết nên hành động lúc nào và như thế nào

Từ sách - Phim - TĐ - 29/07/2026 08:00
Lý nghĩa là các khuôn mẫu. Khi nhận ra các khuôn mẫu trong con người, tình huống và tự nhiên, bạn sẽ có cái nhìn rõ hơn về cách thức và thời điểm vận dụng các dòng chảy ngầm của vũ trụ sao cho có lợi cho bản thân. Đoạn trích dưới đây từ cuốn sách "Sức mạnh của Đạo" của tác giả Max Landsberg sẽ giúp bạn hiểu thêm về "Lý".

Thiếu hụt kỹ năng công nghệ thông tin

Blog GS John VU - GS John Vu - 28/07/2026 11:00
Trong vài năm qua, vấn đề thiếu hụt kĩ năng CNTT thường được nhắc tới ở Mĩ và nó làm khuấy động nhiều cuộc tranh cãi.

4 hành động thể hiện bạn là người EQ thấp

Kỹ năng - Kim Linh - 28/07/2026 10:00
Người có EQ (trí tuệ cảm xúc) thấp thường dễ hành động theo cảm tính, vô tình khiến cả bản thân lẫn người khác rơi vào những tình huống khó xử.

Nhà thiết kế nổi tiếng Việt Nam làm tài xế xe công nghệ để kiếm sống, mừng rỡ khi được khách 'boa' 2.000 đồng

Phong cách sống - Anh Khôi - 28/07/2026 09:00
Bài đăng của nhà thiết kế nhanh chóng nhận được làn sóng tương tác lớn từ giới giải trí.
HẠT GIỐNG TÂM HỒN
2019 Bản quyền thuộc về hatgiongtamhon.com.vn. Phát triển bởi ONECMS