Tải bản đầy đủ (.doc) (68 trang)

Xây dựng chương trình quản lý nhân sự

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (764.66 KB, 68 trang )

Website: Email : Tel : 0918.775.368
Chơng I. Cơ sở và phơng pháp luận cơ bản để
xây dựng chơng trình quản lý nhân sự.
Khi thập kỷ 1980 bắt đầu, một bài báo đăng trên trang nhất của tạp chí
Business Week đã loan báo dòng tiêu đề sau: Phần mềm : Lực điều khiển mới.
Phần mềm đã vào một thời đại - nó đã trở thành một chủ đề cho sự quan tâm của
các tạp chí. Trong suốt giữa những năm 1980, bài báo bao quát trong tạp chí
Fortune than thở về Lỗ hổng lớn dần trong phần mềm, và cuối thập kỷ thì tạp
chí Business Week lại cảnh báo các nhà quản lý về Cái bẫy phần mềm - tự
động hay cái gì khác. Khi những năm 1990 bùng lên một bài báo chính trong
tạp chí Newsweek đã hỏi Liệu chúng ta có thể tin cậy vào phần mềm không?.
Còn tạp chí The Wall Street Journal lại kể một câu chuyện về công việc của một
công ty phần mềm chủ chốt với bài đăng trên trang nhất nhan đề Tạo ra phần
mềm mới là nhiệm vụ thật khổ sở .... Những dòng tiêu đề khác giống chúng là
lời báo hiệu cho một cách hiểu mới về tầm quan trọng của phần mềm máy tính -
những cơ hội mà nó đem đến và những hiểm nguy mà nó đặt ra.
Phần mềm bây giờ đã vợt trội hơn phần cứng xem nh điểm mấu chốt cho
sự thành công của nhiều hệ thống dựa trên máy tính. Dù cho máy tính đợc dùng
để vận hành một doanh nghiệp, kiểm soát một sản phẩm hay làm thành một hệ
thống, phần mềm vẫn là nhân tố khác biệt. Tính đầy đủ và đúng thời hạn của
thông tin do phần mềm cung cấp (và các cơ sở dữ liệu liên quan) làm khác biệt
một công ty này với các đối thủ cạnh tranh với nó. Thiết kế và tính thân thiện
con ngời của một sản phẩm phần mềm làm khác biệt nó với các sản phẩm cạnh
tranh có chức năng tơng tự khác. Sự thông minh và chức năng do phần mềm đợc
nhúng trong đó đa ra thờng làm khác biệt hai sản phẩm tiêu thụ hay công nghiệp
tơng tự nhau. Chính phần mềm tạo sự khác biệt đó.
Website: Email : Tel : 0918.775.368
Website: Email : Tel : 0918.775.368
1. Khái niệm Công nghệ phần mềm.
Mặc dù sự ra đời của máy tính đã đợc gần nửa thế kỷ nhng khái niệm
công nghệ phần mềm chỉ mới xuất hiện trong khoảng thời gian gần đây khi


phần mềm đã thực sự trở thành một ngành công nghiệp có vị trí đáng kể
trong nền kinh tế quốc dân (Nền công nghệ phần mềm Mỹ có vị trí thứ 6
trong toàn bộ nền kinh tế Mỹ). Với quy mô sản xuất công nghiệp, phần mềm
từ chỗ là công cụ phân tích và xử lý thông tin đã trở thành một ngành công
nghiệp mũi nhọn. Môn học công nghệ phần mềm là một môn học tích hợp
các phơng pháp và công cụ để nghiên cứu quá trình sản xuất một phần mềm
không phải ở quy mô học đờng mà ở quy mô công nghiệp thơng mại hoá trên
thị trờng.
Công nghệ phần mềm là một tổ hợp các công cụ, phơng pháp và thủ tục
làm cho ngời quản trị viên dự án nắm đợc xu thế tổng quát phát triển một
phần mềm và giúp cho kỹ s lập trình có một nền tảng để triển khai các định
hớng của phần mềm. Nh vậy khái niệm công nghệ phần mềm biểu diễn một
cách trực quan qua hình vẽ sau:
Website: Email : Tel : 0918.775.368
CNPM
Thành phần
Chức năng
Website: Email : Tel : 0918.775.368
Quá trình phát triển một dự án phần mềm đều trải qua ba giai đoạn :
- Giai đoạn 1: Giai đoạn xác định.
- Giai đoạn 2: Giai đoạn phát triển.
- Giai đoạn 3: Giai đoạn bảo trì.
Mô hình 3 giai đoạn là:
Giai đoạn 1:
- Phân tích hệ thống.
- Kế hoạch.
- Phân tích yêu cầu.
Giai đoạn 2:
- Thiết kế.
- Mã hoá.

- Kiểm thử.
Giai đoạn 3:
Website: Email : Tel : 0918.775.368
Công cụ
Phơng pháp
Thủ tục
Quả
n trị
viên
dự
án.
Kỹ
s
phần
mềm
.
Xác định
Phát triển
Bảo trì
Website: Email : Tel : 0918.775.368
- Bảo trì sửa đổi.
- Bảo trì thích nghi.
- Bảo trì hoàn thiện.
2. Khái niệm phần mềm:
Khái niệm phần mềm lâu nay thờng đợc đồng nhất với khái niệm
chơng trình của máy tính ở mức độ nào đó điều này cũng đứng ở quy mô
học đờng. Trong công nghệ phần mềm chấp nhận định nghĩa sau đây của
của một nhà tin học ngời Mỹ tên là Roger Pressman mà theo đó phần
mềm trong công nghệ phần mềm đợc hiểu là một tập hợp gồm ba yếu tố:
Các chơng trình máy tính, các cấu trúc dữ liệu, hệ thống tài liệu hớng dẫn

sử dụng. Định nghĩa này xác định thành phần của phần mềm trong công
nghệ phần mềm, tổng quát và đầy đủ hơn nhiều so với khái niệm thông
thờng.
Phần mềm đã trải qua các công đoạn phát triển đợc biểu diễn trong bảng
sau:
Thời kỳ 1950-
1960
!960 - 1970 1970 - 1980 1990 trở đi
- Tốc độ máy
tính chậm.
- Xử lý theo lô.
- Phần mềm
đơn chiếc.
- Sản xuất cho
nhóm ngời
dùng.
- Xử lý theo chế
độ thời gian
thực.
- Thơng mại
hoá.
- Hệ thống
phân tán.
- Hiệu quả th-
ơng mại.
- Phần mềm
thông minh.
- Hệ thống để
bàn.
- Lập trình xử

lý hớng đối t-
ợng.
- Xử lý song
song.
Xem xét tiến trình phát triển của phần mềm xuất phát từ thời điểm năm
1950 khi lần đầu tiên trên thế giới xuất hiện hai chiếc máy tính ở Liên Xô và
Mỹ.
Website: Email : Tel : 0918.775.368
Website: Email : Tel : 0918.775.368
3. Vòng đời phát triển của phần mềm.
Trong công nghệ phần mềm ngời ta đặc biệt quan tâm đến vấn đề vòng
đời phát triển của phần mềm. Vòng đời của một phần mềm đợc hiểu là một quy
trình từ khi phần mềm ra đời cho đến khi đợc đa vào sử dụng và quá trình nâng
cấp bảo trì phần mềm đó. Mục đích của việc nghiên cứu vòng đời phát triển
phần mềm là phân ra thành các giai đoạn, trên cơ sở đó tìm giải pháp và công cụ
thích hợp để tác động vào mỗi giai đoạn. Vòng đời phát triển của phần mềm đợc
biểu diễn bằng một mô hình thác nớc sau:
Công đoạn đầu tiên là công nghệ hệ thống nó bao trùm toàn bộ các quá
trình tiếp theo trong công nghệ phần mềm. Vì công nghệ phần mềm là một
thành phần của hệ thống quản lý, do đó nó phải xem xét trong mối liên quan
tổng thể về kinh tế, kỹ thuật, tổ chức của toàn bộ bộ máy quản lý.
Website: Email : Tel : 0918.775.368
Công
nghệ hệ
Phân tích
Thiết
kế

hoá
Kiểm

thử
Bảo trì
Website: Email : Tel : 0918.775.368
Công đoạn tiếp theo là phân tích với mục đích xác định rõ ràng và cụ thể
các yêu cầu của phần mềm.
Phần thiết kế trong công nghệ phần mềm hớng tới các vấn đề sau đây:
Thiết kế kiến trúc hệ thống, thiết kế kỹ thuật. Phần thiết kế hệ thống là quan
trọng nhất vì nó cho ta một cái nhìn tổng thể về phần mềm cần xây dựng còn
thiết kế kỹ thuật đi vào các vấn đề cụ thể bao gồm : thiết kế dữ liệu, thiết kế các
thủ tục, thiết kế công cụ cài đặt.
Mô hình thác nớc biểu diễn vòng đời của chơng trình với hai nghĩa sau:
- Để khẳng định đây là các giai đoạn của một quy trình thống nhất không
tách rời và có mối liên quan mật thiết với nhau.
- Trong mô hình này các công đoạn càng ở phía dới thì càng chịu sự tác
động của tất cả các công đoạn ở phía trên chỉ trừ có công đoạn công nghệ hệ
thống là không chịu sự tác động của bất cứ công đoạn nào.
4. Các đặc trng của phần mềm.
A, Phần mềm đợc phát triển hay đợc công nghệ hoá, nó không đợc
chế tạo theo nghĩa cổ điển.
Mặc dầu có một số điểm tơng đồng giữa phát triển phần mềm và chế tạo
phần cứng, hai hoạt động này cơ bản là khác nhau. Trong cả hai hoạt động
này, chất lợng cao đợc đạt tới thông qua thiết kế tốt, nhng giai đoạn chế tạo
phần cứng có thể đa vào vấn đề chất lợng mà không tồn tại (hay dễ sửa đổi)
cho phần mềm. Cả hai hoạt động này đều phụ thuộc vào con ngời, nhng mối
quan hệ giữa ngời đợc áp dụng và công việc đợc thực hiện là hoàn toàn khác
nhau. Cả hai hoạt động đều đòi hỏi việc xây dựng sản phẩm nhng cách tiếp
cận hoàn toàn khác nhau.
Website: Email : Tel : 0918.775.368
Website: Email : Tel : 0918.775.368
B, Phần mềm không hỏng đi

Phần cứng trong quá trình sử dụng sẽ dẫn đến hao mòn và hỏng hóc.
Việc hỏng hóc của phần cứng sẽ dẫn đến việc thay thế phần cứng mới nhng
phần mềm cũng có hỏng hóc nhng việc cập nhật phần mềm giúp cho phần
mềm ít bị hỏng hóc hơn so với phần cứng . Việc phần mềm hỏng hóc cũng là
điều không thể tránh khỏi của bất kỳ sản phẩm nào vì thế cần sửa chữa kịp
thời tránh gây tác hại xấu đến thông tin xử lý.

C. Phần lớn phần mềm đều đợc xây dựng theo đơn đặt hàng chỉ ít khi đợc
lắp ráp từ các thành phần có sẵn.
5. Định nghĩa về thiết kế phần mềm.
Thiết kế là bớc đầu tiên trong giai đoạn phát triển cho bất kỳ sản phẩm
hay hệ thống công nghệ nào. Nó có thể đợc định nghĩa là: ... tiến trình áp dụng
nhiều kỹ thuật và nguyên lý với mục đích xác định ra một thiết bị, một tiến trình
hay một hệ thống đủ chi tiết để cho phép thực hiện nó về mặt vật lý.
Mục tiêu thiết kế là để tạo ra một mô hình hay biểu diễn của một thực thể
mà sau này sẽ đợc xây dựng. Tiến trình phát triển mô hình này tổ hợp trực giác
và đánh giá dựa trên kinh nghiệm trong việc xây dựng các thực thể tơng tự, một
tâp các nguyên lý và hoặc các trực cảm hớng dẫn cách tiến triển mô hình này,
một tập hợp các tiêu chuẩn để có thể đánh giá chất lợng, và một tiến trình lập lại
để cuối cùng dẫn tới biểu diễn thiết kế chung cuộc.
Thiết kế phần mềm máy tính, giống nh cách tiếp cận thiết kế công nghệ
trong các lĩnh vực khác, liên tục thay đổi khi các phơng pháp mới, cách phân
Website: Email : Tel : 0918.775.368
Website: Email : Tel : 0918.775.368
tích tốt hơn và hiểu biết rộng hơn tiến hoá lên. Không giống nh thiết kế cơ khí
hay điện tử, thiết kế phần mềm có ở ngay giai đoạn tơng đối sớm trong sự tiến
hoá của nó. Chúng ta đã nêu ý tởng nghiêm chỉnh về thiết kế phần mềm( nh đối
lập với Lập trình hay viết mã) chí ít cũng đã hơn ba thập kỷ nay. Do đó, phơng
pháp luận thiết kế phần mềm thiếu độ sâu, sự mềm dẻo và bản chất định tính mà
thông thờng có gắn với nhiều bộ môn thiết kế công nghệ cổ điển. Tuy nhiên, các

kỹ thuật cho thiết kế phần mềm thì đã có, tiêu chuẩn về chất lợng thiết kế cũng
có sẵn, và chúng ta có thể áp dụng đợc phơng pháp công nghệ thiết kế .
5.1 Thiết kế phần mềm và công nghệ phần mềm.
Thiết kế phần mềm nằm ở trung tâm kỹ thuật của tiến trình công nghệ
phần mềm và đợc áp dụng bất kể tới khuôn cảnh phát triển đợc sử dụng. Một khi
các yêu cầu phần mềm đã đợc phân tích và đặc tả thì thiết kế phần mềm là một
trong ba hoạt động kỹ thuật - thiết kế, lập trình và kiểm thử - những hoạt động
cần để xây dựng và kiểm chứng phần mềm. Từng hoạt động này biến đổi thông
tin theo cách cuối cùng tạo ra phần mềm máy tính hợp lệ.

Sơ đồ quy trình thiết kế:
Website: Email : Tel : 0918.775.368
Thi
ết
kế
Lập
trìn
h
Kiể
m
thử
Thiết kế dữ liệu
Thiết
kế thủ
tục
Mô hình
thông
tin
Các yêu
cầu khác

Mô hình
chức năng
Thiết kế
kiến trúc
Thiết kế
kỹ thuật
Phần mềm đã
tích hợp và kiểm
thử
Mô hình
hành vi
Website: Email : Tel : 0918.775.368
Luồng thông tin trong giai đoạn kỹ thuật này việc xây dựng phần
mềm dựa trên các mô hình thông tin, chức năng và hành vi là đầu vào cho thiết
kế. Bằng việc sử dụng một trong một số phơng pháp thiết kế tạo ra thiết kế cơ sở
dữ liệu, thiết kế kiến trúc, và thiết kế thủ tục. Thiết kế dữ liệu chuyển mô hình
lĩnh vực thông tin đã đợc tạo ra trong bớc phân tích các cấu trúc dữ liệu sẽ cần
cho việc cài đặt phần mềm. Thiết kế kiến trúc định nghĩa ra mối quan hệ giữa
các thành phần cấu trúc chính của chơng trình. Thiết kế thủ tục biến đổi các
thành phần cấu trúc thành mô tả thủ tục của phần mềm. Chơng trình gốc đợc
sinh ra rồi việc kiểm thử đợc thực hiện để tích hợp và làm hợp lệ phần mềm.
Thiết kế, lập trình và kiểm thử chiếm đến 75% hay hơn nữa của chi
phí công nghệ phần mềm (trừ bảo trì). Chính tại bớc này mà chúng ta quyết định
rằng sự thành công của việc cài đặt phần mềm sẽ bị ảnh hởng, và điều quan
trọng là làm dễ dàng cho việc bảo trì phần mềm. Những quyết định này đợc thực
hiện trong thiết kế phần mềm, làm cho nó thành bớc thử nghiệm trong giai đoạn
phát triển.
5.2 Tiến trình thiết kế.
Thiết kế phần mềm là một tiến trình qua đó các yêu cầu đợc dịch thành
một biểu diễn phần mềm. Ban đầu biểu diễn mô tả cho quan điểm toàn bộ về

Website: Email : Tel : 0918.775.368
Mô đun chơng
trình
Website: Email : Tel : 0918.775.368
phần mềm. Việc làm mịn tiếp sau dẫn tới một biểu diễn thiết kế rất gần với ch-
ơng trình gốc.
Theo quan điểm quản lý dự án, thiết kế phần mềm đợc tiến hành theo
hai bớc. Thiết kế sơ bộ quan tâm với việc dịch các yêu cầu thành kiến trúc dữ
liệu và phần mềm. Thiết kế chi tiết tập trung vào việc làm mịn biểu diễn thuật
toán cho phần mềm.
Trong phạm vi thiết kế sơ bộ và chi tiết, có xuất hiện một số hoạt động
thiết kế khá nhau. Bên cạnh việc thiết kế dữ liệu, kiến trúc và thủ tục, nhiều ứng
dụng hiện đại có hoạt động thiết kế giao diện phân biệt. Thiết kế giao diện lập ra
cách bố trí và cơ chế tơng tác cho tơng tác ngời máy. Mối quan hệ giữa các
khía cạnh kỹ thuật và quản lý của thiết kế đợc minh hoạ trong hình sau:
5.3 Thiết kế dữ liệu.
Website: Email : Tel : 0918.775.368
Website: Email : Tel : 0918.775.368
Thiết kế dữ liệu là hoạt động thiết kế đầu tiên trong ba hoạt động thiết kế đ-
ợc chỉ đạo trong công nghệ phần mềm. Tác động của cấu trúc dữ liệu lên cấu
trúc chơng trình và độ phức tạp thủ tục làm cho thiết kế dữ liệu có một ảnh hởng
sâu xa tới chất lợng phần mềm. Từng phơng pháp thiết kế có những u nhợc điểm
riêng. Tuỳ theo từng yêu cầu của phần mềm mà lựa chọn phơng pháp khác nhau.
5.4 Thiết kế kiến trúc.
Mục tiêu chủ yếu của thiết kế kiến trúc là phát triển một cấu trúc chơng
trình mô đun và biểu diễn mối quan hệ điều khiển giữa các mô đun. Bên cạnh
đó thiết kế cấu trúc còn trộn lẫn cấu trúc chơng trình và cấu trúc dữ liệu, xác
định các giao diện làm cho dữ liệu chảy qua toàn bộ chơng trình.
5.5 Thiết kế thủ tục.
Thiết kế thủ tục xuất hiện sau khi cấu trúc dữ liệu và cấu trúc chơng

trình đợc thiết lập. Trong thế giới lý tởng, đặc tả thủ tục yêu cầu việc định nghĩa
ngôn ngữ tự nhiên, nh Tiếng Việt. Sau hết , các thành viên của tổ chức phát triển
phần mềm đều nói cùng ngôn ngữ tự nhiên (ít nhất cũng về lý thuyết) những ng-
ời bên ngoài lĩnh vực phát triển phần mềm có thể dễ dàng hiểu đặc tả hơn và
không cần phải học điều mới.
5.6 Các tiêu chuẩn thiết kế phần mềm.
Hiện tại có một số hớng dẫn sau về tiêu chuẩn thiết kế phần mềm:
- Thiết kế nên nêu ra cách tổ chức theo cấp bậc để dùng cách kiểm soát
thông minh trong số các thành phần phần mềm.
- Thiết kế nên theo các mô đun (nh chơng trình con hay thủ tục) nêu ra
các đặc trng chức năng đặc biệt.
- Thiết kế nên chứa cách biểu diễn phân biệt và tách biệt giữa dữ liệu và
thủ tục.
Website: Email : Tel : 0918.775.368
Website: Email : Tel : 0918.775.368
- Thiết kế nên dẫn tới giao diện làm rút gọn độ phức tạp của việc nối
ghép giữa các mô đun với môi trờng bên ngoài.
- Thiết kế nên đợc hớng theo cách dùng một phơng pháp lặp lại đợc điều
khiển bởi thông tin có trong phân tích các yêu cầu phần mềm.
5.7 Dàn bài đặc tả thiết kế .
I.Phạm vi.
A. Mục tiêu hệ thống.
B. Phần cứng, phần mềm và giao diện con ngời.
C. Các chức năng của phần mềm chính.
D. Cơ sở dữ liệu đợc xác định bên ngoài.
E. Các rằng buộc, giới hạn thiết kế chính.
II. Tài liệu tham khảo.
A. Tài liệu phần mềm hiện có.
B. Tài liệu hệ thống.
C. Tài liệu ngời cung cấp (Phần cứng và phần mềm).

D. Tham khảo kỹ thuật.
III. Mô tả thiết kế.
A. Mô tả dữ liệu
a. Tổng quan về luồng dữ liệu.
b. Tổng quan về cấu trúc dữ liệu.
B. Cấu trúc chơng trình suy diễn.
C. Giao diện bên trong cấu trúc.
IV. Mô đun; Cho từng mô đun:
A. Lời thuật xử lý.
B. Mô tả giao diện.
C. Mô tả ngôn ngữ thiết kế( hay những mô tả khác)
Website: Email : Tel : 0918.775.368
Website: Email : Tel : 0918.775.368
D. Các mô đun đã dùng.
E. Tổ chức dữ liệu.
F. Bình luận
V. Cấu trúc tệp và dữ liệu toàn cục.
A. Cấu trúc tệp ngoài
1. Cấu trúc lôgíc
2. Mô tả bản ghi lôgíc
3. Phơng pháp thâm nhập.
B. Dữ liệu toàn cục
C. Tham khảo chéo tệp và dữ liệu.
VI. Tham khảo chéo yêu cầu.
VII. Điều khiển kiểm thử.
A. Hớng dẫn kiểm thử.
B. Chiến lợc tích hợp.
C. Xem xét đặc biệt.
VIII. Đóng gói
A. Các điều khoản cho chơng trình chồng chất đặc biệt.

B. Xem xét chuyển đổi.
IX. Lu ý đặc biệt.
X. Phụ lục.
6. Ngôn ngữ lập trình và lựa chọn ngôn ngữ giải bài toán.
Tất cả các bớc công nghệ phần mềm đã đợc trình bày cho đến điểm này
đều trực tiếp hớng tới mục tiêu cuối cùng: dịch biểu diễn của phần mềm thành
một dạng máy tính có thể hiểu đợc. Cuối cùng đó là bớc lập trình một tiến
trình chuyển đổi thiết kế vào trong ngôn ngữ lập trình. Gerald Weinberg đã diễn
tả đã tả ý nghĩa đúng của lập trình khi ông viết: ... khi chúng ta nói tới máy tính
thì bất hạnh là chúng ta thờng nói theo giọng điệu khác ...
Website: Email : Tel : 0918.775.368
Website: Email : Tel : 0918.775.368
Tuy kỹ thuật thế hệ thứ t đang làm thay đổi cách hiểu về thuật ngữ ngôn
ngữ lập trình. Thay vì lập trình, ngời phát triển một số lớp thế hệ thông tin quản
lý(và lĩnh vực có giới hạn của các ứng dụng kĩ nghệ và khoa học ) bây giờ có thể
mô tả các kết quả mong muốn, thay vì thủ tục mong muốn, trong ngôn ngữ phi
thủ tục. Chơng trình gốc trong ngôn ngữ lập trình quy ớc sau đó đợc sinh ra một
cách tự động.
Tuy nhiên đại đa số các ứng dụng phần mềm vẫn còn nằm ngoài tầm của
cách tiếp cận thế hệ thứ t. Với hiện tại, các ngôn ngữ lập trình vẫn là các ngôn
ngữ lập trình nhân tạo nh ADA, PASCAL, C ...
Khi đợc xét nh một bớc trong tiến trình kỹ nghệ phần mềm, việc lập trình
đợc coi nh một hệ quả tự nhiên của thiết kế. Tuy nhiên các đặc trng ngôn ngữ lập
trình và phong cách lập trình có thể ảnh hởng sâu sắc tới chất lợng và tính dễ bảo
trì của phần mềm.
a, Tiến trình dịch
.
Bớc lập trình dịch một biểu diễn thiết kế chi tiết của phần mềm thành việc
thể hiện bằng ngôn ngữ lập trình. Tiến trình dịch tiếp tục khi trình biên dịch
chấp nhận chơng trình gốc làm cái vào và tạo ra chơng trình đích là cái ra. Cái ra

của trình biên dịch lại đợc dịch thêm lần nữa thành mã máy các lệnh thực tại
điều khiển các mạch lôgíc vi lập trình trong đơn vị xử lý trung tâm.
Bớc dịch khởi đầu từ thiết kế chi tiết sang ngôn ngữ lập trình là mối
quan tâm chủ yếu trong hoàn cảnh công nghệ phần mềm. Việc hiểu không đúng
về đặc tả thiết kế chi tiết có thể dẫn tới chơng trình gốc có lỗi. Độ phức tạp hay
hạn chế của ngôn ngữ lập trình có thể dẫn đến chơng trình gốc xoắn xít đến mức
khó mà kiểm thử và bảo trì. Tinh vi hơn, các đặc trng của ngôn ngữ lập trình có
thể ảnh hởng đến cách ta nghĩ, khi phổ biến các thiết kế phần mềm và cấu trúc
Website: Email : Tel : 0918.775.368
Website: Email : Tel : 0918.775.368
dữ liệu có giới hạn không cần thiết. Các đặc trng ngôn ngữ có tác động lên chất
lợng và tính hiệu quả của việc dịch.
b, Các đặc trng ngôn ngữ lập trình.
Ngôn ngữ lập trình là phơng tiện để liên lạc giữa con ngời và máy tính.
Tiến trình lập trình sự liên lạc thông qua ngôn ngữ lập trình là một hoạt động
con ngời. Hiểu theo cách thông thờng các đặc trng tâm lý của một ngôn ngữ có
một tác động quan trọng lên chất lợng của liên lạc. Tiến trình lập trình cũng có
thể đợc coi nh một bớc trong tiến trình công nghệ phần mềm. Các đặc trng công
nghệ của ngôn ngữ có thể ảnh hởng tới chất lợng của thiết kế chi tiết( nhớ lại
rằng việc thực hành thờng qui định rằng thiết kế chi tiết cần đợc hớng tới một
ngôn ngữ lập trình riêng). Do đó, các đặc trng kỹ thuật có thể ảnh hởng tới mối
quan tâm của cả con ngời và công nghệ phần mềm.
*Cách nhìn tâm lý.
Một số đặc trng tâm lý xuất hiện nh kết quả của thiết kế ngôn ngữ lập
trình. Mặc dù những đặc trng này không đo đợc theo bất kỳ cách thức định lợng
nào nhng thừa nhận biểu hiện của chúng trong mọi ngôn ngữ lập trình.
- Tính đồng đều chỉ ra mức độ theo đó ngôn ngữ dùng ký pháp nhất quán,
áp dụng các hạn chế dờng nh tuỳ ý và hỗ trợ cho các ngoại lệ cú pháp và ngữ
nghĩa đối với quy tắc.
- Tính mơ hồ trong ngôn ngữ lập trình đợc ngời lập trình cảm nhận.

Trình biên dịch bao giờ cũng diễn giải một câu lệnh theo một cách, nhng con ng-
ời có thể hiểu câu lệnh đó theo cách khác. Tại đây có sự mơ hồ về tâm lý.
- Tính gọn gàng của ngôn ngữ lập trình là một chỉ dẫn về khối lợng thông
tin hớng chơng trình mà trí nhớ con ngời phải ghi nhớ.
Website: Email : Tel : 0918.775.368
Website: Email : Tel : 0918.775.368
- Tính cục bộ là đặc trng toàn thái của ngôn ngữ lập trình. Tính cục bộ đ-
ợc làm nổi bật khi các câu lệnh có thể đợc tổ hợp thành các khối, khi các kết cấu
có cấu trúc có thể đợc cài đặt trực tiếp, và khi thiết kế và chơng trình gốc đều
mang tính mô đun và cố kết cao độ. Một đặc trng ngôn ngữ hỗ trợ hay khuyến
khích cho xử lý biệt lệ đều vi phạm tính cục bộ này.
- Tính tuyến tính là một đặc trng tâm lý có liên quan chặt chẽ với khái
niệm bảo trì của lĩnh vực chức năng. Tức là, nhận biết con ngời đợc thuận lợi khi
gặp một dãy tuyến tính các thao tác lôgíc. Những nhánh nhảy xa (và, với một mở
rộng nào đó, các chu trình lớn) vi phạm tính tuyến tính của xử lý.
* Mô hình cú pháp/ ngữ nghĩa.
Shneiderman đã phát triển một mô hình cú pháp ngữ nghĩa cho tiến
trình lập trình có liên quan đến việc xem xét các bớc lập trình. Khi ngời lập trình
áp dụng các phơng pháp công nghệ phần mềm( nh phân tích yêu cầu, thiết kế)
vốn độc lập với ngôn ngữ lập trình thì động tới vấn đề tri thức ngữ nghĩa. Tri
thức ngữ nghĩa mặt khác lại là độc lập với ngôn ngữ, tập trung vào các đặc trng
của một ngôn ngữ xác định.
Về các kiểu tri thức này, tri thức ngữ nghĩa là khó thu nhận đợc hơn cả và
đòi hỏi dùng nhiều trí tuệ. Tất cả các bớc công nghệ phần mềm trớc phần lập
trình đều dùng rất nhiều tri thức ngữ nghĩa. Bớc lập trình áp dụng tri thức cú
pháp vốn là bất kỳ và theo lệnh đợc học theo kiểu vẹt. Khi học một ngôn ngữ
lập trình mới tơng tự nhng không tơng đơng với cú pháp ngôn ngữ đó. Tuy nhiên
khi học một ngôn ngữ mới các lập trình viên cần học cú pháp và ngữ nghĩa của
ngôn ngữ đó.
* Một cách nhìn công nghệ.

Cách nhìn công nghệ phần mềm về các đặc trng của ngôn ngữ lập trình
tập trung vào nhu cầu xác định dự án phát triển phần mềm riêng. Mặc dù vậy
Website: Email : Tel : 0918.775.368
Website: Email : Tel : 0918.775.368
vẫn cần các yêu cầu riêng t cho chơng trình gốc, có thể thiết lập đợc một tập hợp
tổng quát những đặc trng công nghệ : (1) Dễ thiết kế để dịch chơng trình, (2)
Trình biên dịch hiệu quả, (3) Khả chuyển chơng trình gốc, (4) Có sẵn công cụ
phát triển, và (5) Dễ bảo trì.
6.1 Ngôn ngữ lập trình và công nghệ phần mềm.
Bất kể đến khuôn cảnh công nghệ phần mềm, ngôn ngữ lập trình sẽ có tác
động tới việc vạch kế hoạch dự án, phân tích, thiết kế, lập trình, kiểm thử, bảo
trì. Nhng vai trò của ngôn ngữ lập trình phải đợc giữ theo viễn cảnh. Ngôn ngữ
không đa ra các phơng tiện cho việc dịch ngời máy; tuy thế, chất lợng của kết
quả cuối cùng có liên hệ chặt chẽ hơn với các hoạt động công nghệ phần mềm
trớc và sau khi lập trình.
Trong khi lập kế hoạch dự án, hiếm khi tiến hành xem xét các đặc trng kỹ
thuật của ngôn ngữ lập trình. Tuy nhiên, việc lập kế hoạch cho các công cụ hỗ
trợ có liên quan tới định nghĩa tài nguyên cần có, nó thể yêu cầu rằng một chơng
trình biên dịch chuyên dụng( và phần mềm liên kết) hay môi trờng lập trình đợc
xác định. Ước lợng về chi phí và lịch biểu có thể yêu cầu điều chỉnh đờng cong
học hỏi do nhân viên cha có kinh nghiệm với một ngôn ngữ mới.
Một khi các yêu cầu phần mềm đã thiết lập thì các đặc trng của ngôn ngữ
lập trình ứng cử viên trở thành quan trọng hơn. Nếu cần tới các cấu trúc dữ liệu
phức tạp thì ngôn ngữ với sự hỗ trợ cho các cấu trúc dữ liệu phức tạp (nh
PASCAL hay một ngôn ngữ khác) nên đợc tính tới một cách cẩn thận. Nếu cần
khả năng hiệu năng cao, thời gian thực thì ngôn ngữ đợc thiết kế chuyên về thời
gian thực hoặc hiệu quả về bộ nhớ có thể đợc xác định.
Chất lợng của thiết kế phần mềm đợc thiết lập theo cách độc lập với các
đặc trng ngôn ngữ lập trình.Tuy nhiên thuộc tính ngôn ngữ đóng một vai trò
Website: Email : Tel : 0918.775.368

Website: Email : Tel : 0918.775.368
trong chất lợng của thiết kế đợc cài đặt và ảnh hởng ( cả có ý thức lẫn vô thức)
tới cách thiết kế đợc xác định.
6.2 Nền tảng của ngôn ngữ lập trình.
Các đặc trng kỹ thuật của ngôn ngữ lập trình trải rộng lên vô số chủ
đề từ lý thuyết (nh lý thuyết và đặc tả ngôn ngữ hình thức) tới thực chứng (nh so
sánh chức năng của các ngôn ngữ chuyên dụng).
a, Kiểu dữ liệu và định kiểu dữ liệu.
Ngày nay, lợi ích của ngôn ngữ lập trình đợc đáng giá không chỉ ở
cú pháp và sự phóng khoáng của các kết cấu thủ tục của nó. Định kiểu đữ liệu,
và các kiểu dữ liệu đặc biệt đợc ngôn ngữ lập trình hỗ trợ là khía cạnh quan
trọng của chất lợng ngôn ngữ.
Pratt mô tả kiểu dữ liệu và định kiểu dữ liệu là: ... Một lớp các sự vật
dữ liệu cùng với một tập các phép toán để tạo ra và thao tác trên chúng. Một sự
vật dữ liệu kế thừa một tập hợp các thuộc tính nền tảng của kiểu dữ liệu mà nó
thuộc vào. Một sự vật dữ liệu có thể lấy một giá trị nằm bên trong miền giá trị
hợp lệ cho kiểu dữ liệu đó và có thể bị các phép toán của kiểu dữ liệu đó thao
tác.
Các kiểu dữ liệu đơn trải trên một miền rộng bao gồm các kiểu số (nh
số nguyên, phức, số phẩy động), kiểu liệt kê (nh kiểu dữ liệu do ngời dùng định
nghĩa trong PASCAL hay C), kiểu boolean (nh true hay false, yes hay no) và
kiểu xâu String( nh dữ liệu chữ số). Các kiểu dữ liệu phức tạp hơn bao gồm các
cấu trúc dữ liệu trải qua hết từ mảng một chiều đơn giản (vec tơ) cho tới cấu trúc
danh sách tới các mảng và bản ghi đa tạp phức tạp.
Website: Email : Tel : 0918.775.368
Website: Email : Tel : 0918.775.368
Các phép toán có thể đợc thực hiện trên một kiểu dữ liệu đặc biệt và
theo cách thức mà trong đó các kiểu khác nhau có thể thao tác trong cùng câu
lệnh sẽ đợc điều khiển bởi việc kiểm tra kiểu vốn đợc cài đặt bên trong trình
biên dịch hay thông dich ngôn ngữ lập trình. Fairley định nghĩa năm mức kiểm

tra kiểu thờng gặp phải trong các ngôn ngữ lập trình:
Mức 0: Phi kiểu.
Mức 1: Bó buộc kiểu tự động.
Mức 2: Kiểu hỗn hợp.
Mức 3: Kiểm tra kiểu giả mạnh.
Mức 4: Kiểm tra kiểu mạnh.
b, Chơng trình con.
Chơng trình con là một thành phần chơng trình dịch đợc tách biệt có chứa
dữ liệu và cấu trúc điều khiển. Trong đó bất kể đến tên của chơng trình con hay
mô đun hay thủ tục, hàm hay bất kỳ tên gọi đặc biệt nào thì nó vẫn biểu lộ một
cách đặc trng tổng quát: (1)Phần mô tả có chứa tên của nó và mô tả giao diện;
(2) Phần cài đặt có chứa dữ liệu và cấu trúc điều khiển; (3) Một cơ chế kích hoạt
làm cho chơng trình con đợc gọi từ một nơi nào đó khác trong chơng trình.
c, Cấu trúc điều khiển.
Tại mức cơ bản mọi ngôn ngữ lập trình hiện đại đều cho phép ngời lập trình
biểu diễn sự tuần tự, tuyển chọn và lặp các kết cấu lôgíc lập trình có cấu trúc.
Phần lớn các ngôn ngữ hiện đại đều đa ra một cú pháp cho đặc tả trực tiếp về
lệnh if-then-else, do-while, và repeat-until (cũng nh case).
Website: Email : Tel : 0918.775.368
Website: Email : Tel : 0918.775.368
Bên cạnh các kết cấu thủ tục cơ sở của lập trình có cấu trúc, các cấu trúc
điều khiển khác cũng có thể của nó. Đệ qui tạo ra sự kích hoạt lần thứ hai của
chơng trình con trong lần kích hoạt lần thứ nhất. Tức là chơng trình con gọi tới
hay kích hoạt bản thân nó nh một phần của thủ tục đã xác định. Tơng tranh đa ra
sự hỗ trợ cho việc tạo ra nhiều nhiệm vụ, đồng bộ hoá các nhiệm vụ này và liên
lạc nói chung giữa các nhiệm vụ ấy. Tính năng ngôn ngữ này là vô giá khi phải
thực hiện các ứng dụng hệ thống hay thời gian thực. Khiển giải biệt lệ là tính
năng ngôn ngữ lập trình đặt bẫy các điều khiển lỗi hệ thống hay của ngời dùng
rồi truyền điều khiển cho bộ phân khiển giải biệt lệ để xử lý.
d, Hỗ trợ cho cách tiếp cận hớng sự vật.

Về lý thuyết, việc tạo ra các sự vật và kết cấu của phần mềm hớng sự vật có
thể đợc thực hiện bằng cách dùng bất kì ngôn ngữ lập trình qui ớc nào. Nhng
trong thực tế, việc hỗ trợ cho các cách tiếp cận hớng sự vật nên đợc xây dựng
trực tiếp bên trong ngôn ngữ lập trình sẽ đợc dùng để cài đặt thiết kế hớng sự
vật.
6.3 Các lớp ngôn ngữ lập trình.
Có hàng trăm ngôn ngữ lập trình đã đợc sử dụng vào lúc này lúc khác
những nỗ lực phát triển phần mềm nghiêm chỉnh. Ngay cả một thảo luận chi tiết
về năm ngôn ngữ thông dụng nhất cũng nằm ngoài phạm vi bài này.
Bất kỳ một phân loại ngôn ngữ lập trình nào vẫn là vấn đề để mở cho tranh
luận. Trong nhiều trờng hợp, một ngôn ngữ lập trình có thể nằm hợp lệ trong
nhiều phạm trù. Vì vậy minh hoạ cho các lớp ngôn ngữ lập trình ta có hình sau.
Website: Email : Tel : 0918.775.368
Website: Email : Tel : 0918.775.368
6.4 Giới thiệu về Visual Basic.
Visual Basic là sản phẩm của hãng Microsoft và nó đợc tích hợp
trong bộ Microsoft Visual Studio, ra đời từ năm 1991 và tới năm 1998 ra
đời bộ Visual studio 98 (Visual Basic 6.0), sau đó phiên bản kế tiếp là bộ
Visual Studio .Net là bộ công cụ chuyên để xây đựng các ứng dựng Web.
Visual Basic là ngôn ngữ lập trình hớng sự kiện và cho phép lập
trình hớng đối tợng để xây dựng các ứng dụng hoạt động trong môi trờng
Windows.
Visual Basic là ngôn ngữ hỗ trợ việc lập trình với tính trực quan
cao.
Visual Basic cung cấp nhiều công cụ để cho phép kết nối và khai
thác dữ liệu ở nhiều hệ quản trị cơ sở dữ liệu khác nhau.
a, Các thành phần trong giao diện phát triển của Visual Basic.
Website: Email : Tel : 0918.775.368
Ngôn ngũ thế
hệ thứ ba

Vạn năng
Chuyên dụng
Hướng sự vật
Ngôn ngữ thế hệ
hai
1960 1970 1980 1990 2000
Ngôn ngữ thế hệ
bốn
Website: Email : Tel : 0918.775.368
- Của sổ thiết kế Form: Là nơi thiết kế các giao diện thực hiện các
chức năng của ứng dụng.
- Cửa sổ dự án: Là nơi chứa tất cả những thành phần của dự án phần
mềm thông qua đó có thể truy xuất tới mọi đối tợng là thành phần của dự
án bằng cách nháy kép chuột vào tên mỗi đối tợng ở trong cửa sổ dự án.
- Cửa sổ thuộc tính: Là nơi hiển thị và cho phép thay đổi các thuộc
tính của một đối tợng nằm trên giao diện thiết kế.
- Hộp công cụ: Là nơi chứa các đối tợng sử dụng để thiết kế nên
các giao diện.
- Cửa sổ lập trình: Là nơi để viết mã nguồn chơng trình để thực
hiện các chức năng của phần mềm.
- Thanh công cụ và thanh menu: Là nơi chứa danh mục các chức
năng cùng với các nút bấm để truy xuất nhanh tới các chức năng liên quan
đến việc phát triển ứng dụng.
b, Các thành phần của một dự án.
- Form: Là hệ thống các giao diện giao tiếp thực hiện các chức
năng của dự án.
- Cơ sở dữ liệu: Là nơi chứa và quản lý các dữ liệu đầu vào cũng
nh đầu ra của phần mềm.
- Module: Là nới chứa các hàm hay thủ tục thực hiện một chức
năng nào đó và có thể đựôc chia sẻ sử dụng từ các thành phần của dự án

thậm chí la giữa các dự án với nhau.
- Report: Là nơi hiển thị kết quả đầu ra của dự án phần mềm.
c, Các bớc thực hiện để xây dựng một dự án phần mềm trong
Visual Basic.
Bớc 1: Xây dựng giao diện chính và hệ thống thực đơn chức năng.
Website: Email : Tel : 0918.775.368
Website: Email : Tel : 0918.775.368
Bớc 2: Thiết kế các biểu mẫu thành phần tơng ứng với các chức
năng của dự án.
Bớc 3: Thiết kế và xây dựng kết nối với cơ sở dữ liệu.
Bớc 4: Lập trình thực hiên chức năng hiển thị và cập nhật dữ liệu.
Bớc 5: Lập trình thực hiện chức năng tìm kiếm dữ liệu.
Bớc 6: Thiết kế các mẫu báo cáo và lập trình thực hiện chức năng in
báo cáo.
Bớc 7: Lập trình thực hiện chức năng đăng nhập hệ thống, quản lý
và phân quyền ngời sử dụng.
Bớc 8: Lập trình thực hiện chức năng sao lu và phục hồi dữ liệu.
Bớc 9: Thiết kế và xây dựng tài liệu trợ giúp sử dụng phần mềm.
Bớc 10: Đóng gói và tạo bộ cài đặt cho phần mềm.
Website: Email : Tel : 0918.775.368
Website: Email : Tel : 0918.775.368
Chơng II. Tổng quan về cơ quan thực tập và lý
do chọn đề tài.
A. Tổng quan về cơ quan.
1.Giới thiệu chung:
Cơ quan thực tập Ngân hàng nông nghiệp và phát triển nông thôn cấp 3
Ngọc Tảo, Phúc Thọ , Tỉnh Hà Tây.
Số điện thoại liên hệ : 034.649607
Mã số thuế : 0301471228-001-1
Lịch sử hình thành và phát triển của doanh nghiệp:

- Cơ quan đợc thành lập năm 1988, là phòng giao dịch Ngọc Tảo trực
thuộc Ngân hàng Huyện Phúc Thọ. Theo quyết định 499/TDNN ký ngày
12/7/1991 về việc thành lập chi nhánh cho vay hộ sản xuất kinh doanh đã đổi
thành ngân hàng cấp 3 Ngọc Tảo với địa bàn 6 xã phía Đông của huyện.
- Ngân hàng đợc thành lập đứng trớc tình hình kinh tế chung của xã hội là
thời kỳ kinh tế xã hội đang trong giai đoạn khủng hoảng lạm phát cao kinh tế
đời sống nhân dân kém phát triển, tình trạng cờ bạc gia tăng, nhận thức ngời dân
và một bộ phận cán bộ công nhân viên chức nhà nớc về ngân hàng còn yếu kém.
Phòng giao dịch Ngọc Tảo cũng nằm trong số đó.
- Do mới đầu thực hiện cho vay hộ sản xuất kinh doanh nên giai đoạn
1992 2000 về chất lợng tín dụng còn yếu kém tỷ lệ nợ quá hạn quá cao nhiều
lần NHNNo & PTNT và NHNN nằm vùng để tháo gỡ là giải quyết hậu quả.
- Đợc sự giúp đỡ và chỉ đạo trực tiếp của ban giám đốc NHNNo & PTNT
huyện và chuyển biến nhận thức kinh doanh của cán bộ ngân hàng cấp 3 Ngọc
Tảo đạt kết quả tốt từ năm 2000 đến nay và làm ăn có hiệu quả, đạt kết quả tốt.
2. Đặc điểm tổ chức hoạt động kinh doanh của ngân hàng thực tập:
a) Chức năng nhiệm vụ của cơ quan
Website: Email : Tel : 0918.775.368
Website: Email : Tel : 0918.775.368
Là một chi nhánh của ngân hàng nông nghiệp và phát triển nông thônvì
vậy chức năng của cơ quan là những chức năng sau:
- Nhiệm vụ phòng tín dụng là:
+ Lập hồ sơ, giấy tờ cho nông dân vay vốn hỗ trợ nông dân làm giàu cải
thiện đời sống nhân dân.
+ Kiểm tra tình hình sử dụng vốn vay, đánh giá các phơng án, các dự án
đã đợc cho vay.
+ Thu hồi vốn đối với các hộ nông dân vi phạm hợp đồng.
- Nhiệm vụ phòng kế toán - ngân quỹ:
+ Kiểm tra hồ sơ cho vay.
+ Giải ngân đối với các hồ sơ đạt yêu cầu.

+ Thu lãi hàng tháng và vốn gốc đối với các hộ nông dân đã vay.
+ Tiến hành việc chuyển tiền trong nớc và ra nớc ngoài.
+ Nhận tiền gửi tiết kiệm với nội tệ và ngoại tệ (Đô la Mỹ - USD).
+ Thủ quỹ có nhiệm vụ nhận tiền, kiểm tra tiền của khách hàng đến trả nợ
hoặc gửi tiết kiệm.
+ Nhận và bảo quản sổ đỏ đối với các hợp đồng đợc bảo đảm trong hợp
đồng.
b) Đặc điểm tổ chức kinh doanh của Công ty
Đợc thành lập từ phòng giao dịch ngân hàng đến nay ngân hàng cấp 3
Ngọc Tảo đã trở thành một đơn vị kinh doanh trực thuộc ngân hàng Huyện Phúc
Website: Email : Tel : 0918.775.368

×