Một quy trình phần mềm là tập hợp các hoạt động dẫn đến sản xuất một sản phẩm phần mềm. Các hoạt động này có thể liên quan đến việc phát triển phần mềm từ đầu băng ngôn ngữ lập trình cơ bản như C hoặc Java. Tuy nhiên, đối với ứng dụng doanh nghiệp thì không cần thiết phát triển theo cách này.. Các phần mềm này thường được phát triển bằng cách mở rộng, thay đổi hệ thống đã có hoặc cấu hình, tich hợp với các thành phần hệ thống, các phần mềm sẵn có khác.
Showing posts with label Công nghệ phần mềm. Show all posts
Showing posts with label Công nghệ phần mềm. Show all posts
Tuesday, February 11, 2014
Monday, February 10, 2014
Câu hỏi ôn tập
1.1. Explain why
professional software is not just the programs that are developed for a
customer.
Giải thích tại sao phần mềm chuyên nghiệp không chỉ là chương trình viết
cho một người
Case study 3:A wilderness weather station
Để giúp giám sát thay đổi thời tiết và tăng tính chính xác dự báo thời tiết những nơi xa, chính phủ của những đất nước vùng hoang dã rộng lớn quyết định đặt hàng trăm các trạm đo thời tiết nơi xa. Những tram này thu thập thông tin từ một tập các thiết bị để đo lượng nhiệt độ, áp suất, độ sáng mặt trời, lượng mưa, tốc độ gió, hướng gió.
Tram dự báo thời tiết hoang dã là một phần của hệ thống lớn, với hệ thống thông tin thời tiết mà thu thập dữ liệu thời tiết và sẵn sàng cung cấp cho hệ thống xử lý khác.
Tram dự báo thời tiết hoang dã là một phần của hệ thống lớn, với hệ thống thông tin thời tiết mà thu thập dữ liệu thời tiết và sẵn sàng cung cấp cho hệ thống xử lý khác.
Case Study 2:A patient information system for mental health care
Một hệ thống thông tin bệnh nhân hỗ trợ chăm sóc sức khỏa tâm thần là một hệ thống duy trì thông tin về bệnh nhân có vấn đề về sức khỏe tâm thần và các phương pháp họ đã điều trị. Hầu hết các bệnh nhân tâm thần không cần sự điều trị đặt tại bệnh viện mà chỉ cần gặp chuyên gia ở phòng khám thường xuyên. Những người có kiến thức về vấn đề của họ. Để tạo điều kiện, những phòng khám này không chỉ ở trong bệnh viện, mà còn được xây dựng trong trung tâm ý tế đựa phương hoặc trung tâm cộng đồng.
Case study 1: Hệ thống nhúng: hệ thống kiểm soát bơm insulin
Một máy bơm insulin là một hệ thống y
tế nhằm giả lặp hoạt động của tuyến tụy (một cơ quan nội tạng). Phần mềm điều
khiển hệ thống này là một hệ thống nhúng, có nhiệm vụ thu thập thông tin từ các
cảm biến và điều khiển máy bơm cung cấp lượng insulin đúng cho người dùng.
Sunday, February 9, 2014
Công nghệ phần mềm và web
Sự phát triển của World Wide Web đã có ảnh hưởng sâu rộng của chugns ta. Nguyên thủy, Web chỉ là nơi lưu trữ thông tin truy xuất rộng và nó rất ít ảnh hưởng đế hệ thống phần mềm. Những hệ thống phần mềm này chạy trên máy cá nhân và chỉ được truy xuất từ bên trong tổ chức. Khoảng năm 2000, web bắt đầu tiến hóa, ngày càng nhiều chức năng được đưa thêm vào trình duyệt web. Điều này dẫ đến nhiều hệ thống dựa trên nền web được xây dựng. Thay vì chỉ một giao diện người dùng, người dùng có thể truy xuất bằng cách sử dụng trình duyệt web. Từ đó một phạm vi rộng các hệ thống được phát triển cung cấp các dịch vụ sáng tạo thông qua web. Những dịch vụ này thường được tài trợ bởi các quảng cáo và người dung không phải trả phí.
Saturday, February 8, 2014
Sự đa dạng của công nghệ phần mềm
Công nghệ phần mềm là cách tiếp cận hệ thống để sản xuất phần mềm có tích đến các chi phí, lịch trình và độ tin cậy cũng như nhu cầu của khách hàng và nhà sản xuất.Làm thế nào mà cách tiếp cận này thực thi trong thực tế thì phụ thuộc vào các tổ chức phát triển phần mềm, loại phần mềm và con người tham gia tiến trình sản xuất phần mềm. Không có phương pháp nào chung cho mọi loại hệ thống, vì vậy đã có rất nhiều phương pháp và kỹ thuật công nghệ phần mềm trong hơn 50 năm qua.
Ba vấn đề chung ảnh hương đến mọi loại phần mềm
Như đã đề cập ở trên, có rất nhiều loại
phần mềm khác nhau. Không có một phương thức công nghệ phần mềm tổng thể hoặc kỷ
thuật có thể áp dụng cho tất cả. Tuy nhiên cũng có 3 vấn đề chung ảnh hưởng tất
các loại phần mềm:
Khái niệm công nghệ phần mềm (software engineering)
Định nghĩa phần mềm: Phần mềm là chương trình máy tính và các tài liệu liên quan. Các sản phẩm phần mềm có thể được thiết kế cho một khách hàng cụ thể nào đó hoặc cho thị trường nói chung.
Một phần mềm tốt là phần mềm cung cấp các chức năng, hiệu năng yêu cầu cho người sử dụng. Nó có thể sử dụng được, đáng tin cậy và có thể bảo trì.
Giới thiệu về công nghệ phần mềm
Rất nhiều người viết chương trình. Doanh nhận viết các ứng dụng
bảng tính để đơn giản hóa công việc của họ, các kỹ sư, người nghiên cứu viết
chương trình để xử lý các số liệu thí nghiệm, hoặc cũng có người viết chương
trình theo sở thích. Dù sao thì phần lớn việc phát triển phần mềm là các hoạt động
chuyên môn mà nó được phát triển vì các mục đích công việc cụ thể, để đưa vào
các thiết bị hoặc một hệ thống thông tin, hệ thống CAD … Một phần mềm chuyên
nghiệp, được sử dụng bởi một một người nhưng thường được phát triển bởi một
nhóm người. Nó luôn được bảo trì và thay đổi trong suột thời gian sống của nó.
Nhập môn công nghệ phần mềm
Công nghệ phần mềm là một học phần mà các sinh viên IT nào cũng học qua, có nhiều sách rất hay, nhưng mình tâm đắc cái cuốn Software Engineering của Ian Sommerville. Cuốn sách gồm 4 phần và 26 chương, trong đó 9 chương đầu phần 1 là nội dung của môn học chúng ta. Vì vậy, để cùng học tốt mình sẽ cùng các bạn đọc 9 chương này nhé.
Chapter 1 Introduction
1.1 Professional software development
1.2 Software engineering ethics
1.3 Case studies
Chapter 2 Software processes
2.1 Software process models
2.2 Process activities
2.3 Coping with change
2.4 The rational unified process
Chapter 3 Agile software development
3.1 Agile methods
3.2 Plan-driven and agile development
3.3 Extreme programming
3.4 Agile project management
3.5 Scaling agile methods
Chapter 4 Requirements engineering
4.1 Functional and non-functional requirements
4.2 The software requirements document
4.3 Requirements specification
4.4 Requirements engineering processes
4.5 Requirements elicitation and analysis
4.6 Requirements validation
4.7 Requirements management
Chapter 5 System modeling
5.1 Context models
5.2 Interaction models
5.3 Structural models
5.4 Behavioral models
5.5 Model-driven engineering
Chapter 6 Architectural design
6.1 Architectural design decisions
6.2 Architectural views
6.3 Architectural patterns
6.4 Application architectures
Chapter 7 Design and implementation
7.1 Object-oriented design using the UML
7.2 Design patterns
7.3 Implementation issues
7.4 Open source development
Chapter 8 Software testing
8.1 Development testing
8.2 Test-driven development
8.3 Release testing
8.4 User testing
Chapter 9 Software evolution
9.1 Evolution processes
9.2 Program evolution dynamics
9.3 Software maintenance
9.4 Legacy system management
Subscribe to:
Posts (Atom)
