Tuesday, October 31, 2017

shh.java and shh.xlm Tuesday, October 31, 2017


Mô hình :

attacker(s)-->Master(s)-->daemon(s)-->victim(s)

- Attacker -----> Master : port 27665/TCP

- Master -----> Deamons : port 27444/UDP

- Daemon ------> Master : port 31335/UDP

- Deamon -----> UDP Flood đến mục tiêu (random port) .



5.2.2 Tribe Flood Network (TFN/TFN2K)

Tương tự như Trinoo nhưng Tribe Flood Network còn cho phép attacker sử

dụng thêm ICMP flood, SYN flood và Smurf .

Mô hình :

attacker(s)-->client(s)-->daemon(s)-->victim(s)



5.2.3 Stacheldraht

Stacheldraht là sự kết hợp các tính năng của Trinoo và TFN, bên cạnh đó còn

thêm khả năng mã hóa giao tiếp giữa attacker và stacheldraht masters.

Stacheldraht cung cấp cho attacker khá nhiều phương thức tấn công từ

chối dịch vụ : ICMP flood, SYN flood, UDP flood và Smurf .

Mô hình :

client(s)-->handler(s)-->agent(s)-->victim(s)

- Client ---> handler(s) : port 16660/tcp

- Handler <----> agent(s): port 65000/tcp, ICMP ECHO REPLY



5.2.4 Trinity

Trinity có hầu hết các kỹ thuật tấn công bao gồm: UDP, TCP SYN, TCP ACK,

TCP fragment, TCP NULL, TCP RST, TCP random flag, TCP

ESTABLISHED packet flood. Nó có sẵn khả năng ngẫu nhiên hóa địa chỉ bên

gởi. Trinity cũng hỗ trợ TCP flood packet với khả năng ngẫu nhiên tập

CONTROL FLAG. Trinity có thể nói là một trong số các công cụ DDoS nguy

hiểm nhất.



25



5.2.5 Shaft

Shaft có các kĩ thuật tấn công UDP, ICMP và TCP flood. Có thể tấn công phối

hợp nhiều kiểu cùng lúc. Có thống kê chi tiết cho phép attacker biết tình trạng

tổn thất của nạn nhân, mức độ quy mô của cuộc tấn công để điều chỉnh số

lượng Agent.

Mô hình :

client(s)-->handler(s)-->agent(s)-->victim(s)

- Client ----> handler(s): port 20432/tcp

- Handler ---> agent(s): port 18753/udp

- Agent ---> handler(s): port 20433/udp



5.2.6 X-flash

Vấn đề then chốt của hacker tấn công bằng hình thái cổ điển là nắm quyền

điều khiển càng nhiều máy tính càng tốt, sau đó anh ta sẽ trực tiếp phát động

tấn công hàng loạt từ xa thông qua một kênh điều khiển. Với quy mô mạng

lưới tấn công bao gồm vài trăm nghìn máy, hình thái này có thể đánh gục ngay

lập tức bất cứ hệ thống nào. Phối hợp với khả năng giả mạo địa chỉ IP, kiểu

tấn công này sẽ rất khó lần theo dấu vết.



26



Hình 08: Mô hình mạng Classic DDoS

Tuy nhiên, mô hình này có một số nhược điểm:

- Mạng lưới tấn công là cố định và tấn công xảy ra đồng loạt nên rất

dễ điều tra ngược tìm manh mối.

- Software cài lên các Infected Agent là giống nhau và có thể dùng

làm bằng chứng kết tội hacker.

- Phía nạn nhân có thể điều chỉnh hệ thống phòng vệ để ngăn chặn

vì mạng lưới tấn công là “khả kiến”.

- Hacker buộc phải trực tiếp kết nối đến mạng lưới các máy tấn công

tại thời điểm tấn công để điều khiển nên rất dễ lần ra thủ phạm.

X-Flash xuất hiện sau khi DantruongX và nhóm BeYeu phát hiện ra

những lỗ hổng bảo mật của IE và Flash Player. Nó chỉ bằng cách đơn giản là

gửi yêu cầu tới web server dạng HTTP Request ( yêu cầu dạng POST hay

GET) với một tốc độ cực kì nhanh kiến web services bị crash.



27



Cách tấn công : Hacker treo một file flash trên một trang web trung

gian có nhiều người truy xuất, người dùng truy xuất trang web này file flash sẽ

được tải về máy và được chương trình Flash thực thi. Từ đây vô số các yêu

cầu truy xuất sẽ gởi đến trang web mục tiêu.



Hình 09: Mô hình mạng X-Flash DDoS

Flash DDOS có một số đặc tính khiến cho việc ngăn chặn và phát hiện gần

như là không thể. Do mạng lưới tấn công phức tạp và tự hình thành :

- Không cần thiết phải nắm quyền điều khiển và cài DDOS

software vào các infected agent. Thay vào đó mọi user với một trình duyệt có

hỗ trợ nội dung Flash (có Flash Player) sẽ trở thành công cụ tấn công.

- Số lượng attack agent tùy thuộc vào số lượng user truy xuất các

trang web đã bị hacker “nhúng” nội dung flash, số lượng này thay đổi theo

thời gian và hoàn toàn không thể nhận biết địa chỉ IP nguồn, vì đây là các user

thông thường.

28



- Không hề có quá trình gởi lệnh và nhận báo cáo giữa hacker và

mạng lưới tấn công, toàn bộ lệnh tấn công được “nhúng” trong nội dung flash

và hacker không cần nhận báo cáo do đây là mô hình tấn công bất đồng bộ.

- Tấn công bất đồng bộ: Việc tấn công diễn ra không cần có mệnh

lệnh. Người dùng truy xuất trang web , load nội dung flash về trình duyệt và

Flash player thực thi nội dung flash thì ngay lập tức máy của họ trở thành một

attack agent-liên tục gởi hàng trăm request đến máy chủ web nạn nhân.

- Quy mô tấn công phụ thuộc vào số lượng trang web bị lợi dụng và

số lượng người dùng thường xuyên truy xuất các trang web này. Chỉ tính trung

bình hacker lợi dụng được 10 trang web và mỗi trang web này có số lượng

truy xuất khoảng 100 user tại một thời điểm thì tổng số request mà server nạn

nhân phải hứng chịu tại một thời điểm lên đến con số vài chục ngàn. Đây là

một số liệu kinh hoàng với bất kỳ ai làm quản trị hệ thống của bất cứ trang

web nào và kết quả thường là hệ thống tê liệt ngay lập tức.

Tuy nhiên, hiện nay chương trình Flash player mới nhất đã được fix

lỗi, cách tấn công Flash đã phần nào được hạn chế.



6. Phòng chống DDoS

6.1 Phòng chống DDoS

Có rất nhiều giải pháp và ý tưởng được đưa ra nhằm đối phó với các cuộc tấn

công kiểu DDoS. Tuy nhiên không có giải pháp và ý tưởng nào là giải quyết trọn

vẹn bài toán Phòng chống DDoS. Các hình thái khác nhau của DDoS liên tục xuất

hiện theo thời gian song song với các giải pháp đối phó, tuy nhiên cuộc đua vẫn

tuân theo quy luật tất yếu của bảo mật máy tính: “Hacker luôn đi trước giới bảo

mật một bước”.

Có ba giai đoạn chính trong quá trình Phòng chống DDoS:

- Giai đoạn ngăn ngừa: tối thiểu hóa lượng Agent, tìm và vô hiệu hóa

các Handler.

- Giai đoạn đối đầu với cuộc tấn công: Phát hiện và ngăn chặn cuộc tấn

công, làm suy giảm và dừng cuộc tấn công, chuyển hướng cuộc tấn công.

29



- Giai đoạn sau khi cuộc tấn công xảy ra: thu thập chứng cứ và rút kinh

nghiệm.



Hình 10: Các giai đoạn chi tiết trong phòng chống DDoS



6.1.1 Tối thiểu hóa lượng Agent

Từ phía người dùng: một phương pháp rất tốt để ngăn ngừa tấn công DDoS

là từng người dùng Internet sẽ tự đề phòng không để bị lợi dụng tấn công hệ

thống khác. Muốn đạt được điều này thì ý thức và kỹ thuật phòng chống phải

được phổ biến rộng rãi cho mọi người dùng. Mạng lưới Botnet sẽ không bao

giờ hình thành nếu không có người nào bị lợi dụng trở thành Agent. Mọi

người dùng phải liên tục thực hiện các quá trình bảo mật trên máy vi tính

của mình. Họ phải tự kiểm tra sự hiện diện của Agent trên máy của mình,

điều này là rất khó khăn đối với những người dùng thông thường. Một giải

pháp đơn giản là nên cài đặt và update liên tục các software như antivirus,

antitrojan và các bản patch của hệ điều hành.

Từ phía Network Service Provider: Thay đổi cách tính tiền dịch vụ

truy cập theo dung lượng sẽ làm cho user lưu ý đến những gì họ gửi, như vậy

về mặt ý thức tăng cường phát hiện DDoS Agent sẽ tự nâng cao ở mỗi người

dùng.

30



6.1.2 Tìm và vô hiệu hóa các Handler

Một nhân tố vô cùng quan trọng trong mạng Botnet là Handler, nếu có thể

phát hiện và vô hiệu hóa Handler thì khả năng Phòng chống DDoS thành

công là rất cao. Bằng cách theo dõi các giao tiếp giữa Handler và Client hay

Handler và Agent ta có thể phát hiện ra vị trí của Handler. Do một Handler

quản lý nhiều, nên triệt tiêu được một Handler cũng có nghĩa là loại bỏ một

lượng đáng kể các Agent trong mạng Botnet.



6.1.3 Phát hiện dấu hiệu của cuộc tấn công

Có nhiều kỹ thuật được áp dụng:

- Agress Filtering: Kỹ thuật này kiểm tra xem một packet có đủ tiêu

chuẩn ra khỏi một subnet hay không dựa trên cơ sở gateway của một subnet

luôn biết được địa chỉ IP của các máy thuộc subnet. Các packet từ bên trong

subnet gửi ra ngoài với địa chỉ nguồn không hợp lệ sẽ bị giữ lại để điều tra

nguyên nhân. Nếu kỹ thuật này được áp dụng trên tất cả các subnet của

Internet thì khái nhiệm giả mạo địa chỉ IP sẽ không còn tồn tại.

- MIB statistics: trong Management Information Base (SNMP-Simple

Network Management Protocol ) của route luôn có thông tin thống kể về sự

biến thiên trạng thái của mạng. Nếu ta giám sát chặt chẽ các thống kê của

Protocol ICMP, UDP và TCP ta sẽ có khả năng phát hiện được thời điểm bắt

đầu của cuộc tấn công để tạo “quỹ thời gian vàng” cho việc xử lý tình

huống.



6.1.4 Làm suy giảm hay dừng cuộc tấn công

Dùng các kỹ thuật sau:

- Load balancing: Thiết lập kiến trúc cân bằng tải cho các server trọng

điểm sẽ làm gia tăng thời gian chống chọi của hệ thống với cuộc tấn công

DDoS. Tuy nhiên, điều này không có ý nghĩa lắm về mặt thực tiễn vì quy

mô của cuộc tấn công là không có giới hạn.

- Throttling: Thiết lập cơ chế điều tiết trên router, quy định một khoảng

tải hợp lý mà server bên trong có thể xử lý được. Phương pháp này cũng có

31



thể được dùng để ngăn chặn khả năng DDoS traffic không cho user truy cập

dịch vụ. Hạn chế của kỹ thuật này là không phân biệt được giữa các loại

traffic, đôi khi làm dịch vụ bị gián đoạn với user, DDoS traffic vẫn có thể

xâm nhập vào mạng dịch vụ nhưng với số lượng hữu hạn.

- Drop request: Thiết lập cơ chế drop request nếu nó vi phạm một số quy

định như: thời gian delay kéo dài, tốn nhiều tài nguyên để xử lý, gây

deadlock. Kỹ thuật này triệt tiêu khả năng làm cạn kiệt năng lực hệ thống,

tuy nhiên nó cũng giới hạn một số hoạt động thông thường của hệ thống, cần

cân nhắc khi sử dụng.



6.1.5 Chuyển hướng cuộc tấn công

Honeyspots: Một kỹ thuật đang được nghiên cứu là Honeyspots.

Honeyspots là một hệ thống được thiết kế nhằm đánh lừa attacker tấn công

vào khi xâm nhập hệ thống mà không chú ý đến hệ thống quan trọng thực

sự.

Honeyspots không chỉ đóng vai trò “Lê Lai cứu chúa” mà còn rất hiệu

quả trong việc phát hiện và xử lý xâm nhập, vì trên Honeyspots đã thiết lập

sẵn các cơ chế giám sát và báo động.

Ngoài ra, Honeyspots còn có giá trị trong việc học hỏi và rút kinh

nghiệm từ Attacker, do Honeyspots ghi nhận khá chi tiết mọi động thái của

attacker trên hệ thống. Nếu attacker bị đánh lừa và cài đặt Agent hay

Handler lên Honeyspots thì khả năng bị triệt tiêu toàn bộ mạng Botnet là rất

cao.



6.1.6 Giai đoạn sau tấn công

Trong giai đoạn này thông thường thực hiện các công việc sau:

-Traffic Pattern Analysis: Nếu dữ liệu về thống kê biến thiên lượng

traffic theo thời gian đã được lưu lại thì sẽ được đưa ra phân tích. Quá trình

phân tích này rất có ích cho việc tinh chỉnh lại các hệ thống Load Balancing

và Throttling. Ngoài ra các dữ liệu này còn giúp quản trị mạng điều chỉnh lại

các quy tắc kiểm soát traffic ra vào mạng của mình.

32



- Packet Traceback: bằng cách dùng kỹ thuật Traceback ta có thể truy

ngược lại vị trí của Attacker (ít nhất là subnet của attacker). Từ kỹ thuật

Traceback ta phát triển thêm khả năng Block Traceback từ attacker khá hữu

hiệu.

- Bevent Logs: Bằng cách phân tích file log sau cuộc tấn công, quản trị

mạng có thể tìm ra nhiều manh mối và chứng cứ quan trọng.



6.2 Những vấn đề có liên quan

DDoS là một kiểu tấn công rất đặc biệt, điểm cực kỳ hiểm ác của DDoS làm cho

nó khó khắc phục là “DDoS đánh vào nhân tố yếu nhất của hệ thống thông tin –

con người”. Từ đặc điểm này của DDoS làm phát sinh rất nhiều các vần đề mà

mọi người trong cộng đồng Internet phải cùng chung sức mới có thể giải quyết.

Sau đây là các yếu điểm mà chúng ta cần phải hạn chế :



6.2.1 Thiếu trách nhiệm với cộng đồng

Con người thông thường chỉ quan tâm đầu tư tiền bạc và công sức cho hệ

thống thông tin của “chính mình”. DDoS khai thác điểm này rất mạnh ở

phương thức giả mạo địa chỉ và Broadcast amplification.

- IP spoofing: một cách thức đơn giản nhưng rất hiệu quả được tận dụng

tối đa trong các cuộc tấn công DDoS. Thực ra chống giả mạo địa chỉ không có

gì phức tạp, như đã đề cập ở phần trên, nếu tất cả các subnet trên Internet đều

giám sát các packet ra khỏi mạng của mình về phương diện địa chỉ nguồn hợp

lệ thì không có một packet giả mạo địa chỉ nào có thể truyền trên Internet

được.

Đề nghị: “Tự giác thực hiện Egress Filtering ở mạng do mình quản lý”.

Hi vọng một ngày nào đó sẽ có quy định cụ thể về vấn đề này cho tất cả các

ISP trên toàn cầu.

- Broadcast Amplification: tương tự IP spoofing, nó lợi dụng toàn bộ

một subnet để flood nạn nhân. Vì vậy, việc giám sát và quản lý chặt chẽ khả

năng broadcast của một subnet là rất cần thiết. Quản trị mạng phải cấu hình

toàn bộ hệ thống không nhận và forward broadcast packet.

33



6.2.2 Sự im lặng

Hầu hết các tổ chức đều không có phản ứng hay im lặng khi hệ thống của

mình bị lợi dụng tấn công hay bị tấn công. Điều này làm cho việc ngăn chặn

và loại trừ các cuộc tấn công trở nên khó khăn. Mọi việc trở nên khó khăn khi

mọi người không chia sẻ kinh nghiệm từ các cuộc tấn công, trong khi giới

hacker thì chia sẻ mã nguồn mở của các công cụ, một cuộc chơi không cân sức

.

Đề nghị:

- Mỗi tổ chức có liên quan nên thiết lập quy trình xử lý xâm nhập vào tổ chức,

nhóm chuyên trách với trách nhiệm và quy trình thật cụ thể. Các ISP nên thiết lập

khả năng phản ứng nhanh và chuyên nghiệp để hỗ trợ các tổ chức trong việc thực

hiện quy trình xử lý xâm nhập của mình.

- Khuyến khích các quản trị mạng gia nhập mạng lưới thông tin toàn cầu của các

tổ chức lớn về bảo mật nhằm thông tin kịp thời và chia sẻ kinh nghiệm với mọi

người

- Tất cả các cuộc tấn công hay khuyết điểm của hệ thống đều phải được báo cáo

đến bộ phận tương ứng để xử lý.



6.2.3 Tầm nhìn hạn hẹp

Nếu chỉ thực hiện các giải pháp trên thôi thì đưa chúng ta ra khỏi tình trạng

cực kỳ yếu kém về bảo mật. Các giải pháp này không thực sự làm giảm các rủi

ro của hệ thống thông tin mà chỉ là các giải pháp tình thế. Có những vấn đề

đòi hỏi một cái nhìn và thái độ đúng đắn của cộng đồng Internet. Cần phải có

những nghiên cứu thêm về mặt quy định bắt buộc và pháp lý nhằm hỗ trợ

chúng tac giải quyết các vấn đề mà kỹ thuật không thực hiện nỗi. Một số vấn

đề cần thực hiện thêm trong tương lai:

- Giám sát chi tiết về luồng dữ liệu ở cấp ISP để cảnh cáo về cuộc tấn công.

- Xúc tiến đưa IPSec và Secure DNS vào sử dụng.

- Khẳng định tầm quan trọng của bảo mật trong quá trình nghiên cứu và phát

triển của Internet II.



34



lc.xml


    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

            android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView" />

            android:id="@+id/radioGroup1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

                    android:id="@+id/radio0"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:text="Tong 2 so" />

                    android:id="@+id/radio1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Thuong 2 so" />

                    android:id="@+id/radio2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Kiem tra so nguyen to" />

                    android:id="@+id/rbHoanHao"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Kiem tra hoan hao" />

                    android:id="@+id/radioButton2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Kt chinh phuong" />

                    android:id="@+id/radioButton3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Nghe nhac" />

                    android:id="@+id/radioButton4"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Edit Contact" />

                    android:id="@+id/radioButton5"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Insert  Contact" />

                    android:id="@+id/radioButton6"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Delete Contact" />

                    android:id="@+id/rbSendMessage"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Send Message" />

   


   


lc.xjava

package com.example.ngothihoan;

import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.RadioButton;

public class lc extends Activity {

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.lc);
 
   findViewById(R.id.btnExit).setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
finish();
System.exit(0);

}
});
 
   findViewById(R.id.btnOK).setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
RadioButton rbKtHH = (RadioButton) findViewById(R.id.rbHoanHao);
RadioButton rbSendMessage = (RadioButton) findViewById(R.id.rbSendMessage);

if(rbKtHH.isChecked()){
Intent i = new Intent(lc.this,sohh.class);
startActivity(i);
}

if(rbSendMessage.isChecked()){
Intent i = new Intent(Intent.ACTION_VIEW,Uri.parse("sms:0979381830"));
startActivity(i);
}
}
});
 
}

}

amaindc.xml

    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.bt1.MainActivity" >

            android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

                    android:layout_width="wrap_content"
            android:layout_height="wrap_content" >

                            android:id="@+id/txtThongbao"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="User name : " />

                            android:id="@+id/txtUser"
                android:layout_width="197dp"
                android:layout_height="wrap_content" >

               
           


       


                    android:layout_width="match_parent"
            android:layout_height="wrap_content" >

                            android:id="@+id/txtKQ"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Password : " />

                            android:id="@+id/txtPassword"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:ems="10"
                android:inputType="textPassword" />

       


                    android:layout_width="match_parent"
            android:layout_height="wrap_content" >

           


   




Mainactive.java

Mainacct

import android.support.v7.app.ActionBarActivity;
import android.app.*;
import android.content.*;
import android.os.*;
import android.util.*;
import android.view.*;
import android.widget.*;


public class MainActivity extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
       
        Button btnExit = (Button) findViewById(R.id.btnExit1);
        Button btnSignin = (Button) findViewById(R.id.btnSignIn);
       
        btnExit.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
finish();
System.exit(0);
}
});
       
        btnSignin.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(final View v) {
EditText txtUser = (EditText) findViewById(R.id.txtUser);
EditText txtPass = (EditText) findViewById(R.id.txtPassword);

if(txtUser.getText().toString().equals("hoan")&& txtPass.getText().toString().equals("hoan")){
Intent i = new Intent(v.getContext(),lc.class);
startActivity(i);
finish();
}
else{
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
  builder.setTitle("Cảnh báo")
   .setMessage("Tên tk hoặc mật khẩu sai . Vui lòng nhập lại !")
   .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
       public void onClick(DialogInterface dialog, int which) {
       
       }
    })
   .setIcon(android.R.drawable.ic_secure)
   .show();
}

  Log.d("user",txtUser.getText().toString());
  Log.d("pass",txtPass.getText().toString());
}
});
       
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
}

Friday, October 27, 2017

Ôn CNPM Friday, October 27, 2017



1 - Giai đoạn kiểm định và bảo trì chiếm khoảng bao nhiêu phần trăm (%) trong quá trình phát triển phần mềm?
[c]--35%

2 - Trong quá trình phát triển phần mềm, giai đoạn đặc tả phần mềm có nghĩa là:
[d]--Nhận biết vấn đề, bài toán thực tế, các yêu cầu mà người dùng đặt ra.

3 - Trong quá trình phát triển phần mềm, giai đoạn thiết kế phần mềm có nghĩa là :
[a]--Xây dựng không gian giải pháp cho vấn đề.

4 - Trong quá trình phát triển phần mềm, giai đoạn lập trình phần mềm có nghĩa là :
[b]--Xây dựng một hệ thống thực hiện được dựa vào thiết kế.

5 - Trong quá trình phát triển phần mềm, giai đoạn kiểm định phần mềm có nghĩa là:
[d]--Thẩm định lại tính đúng đắn của giải pháp theo yêu cầu ban đầu đã đặt ra.

6 - Trong quá trình phát triển phần mềm, giai đoạn bảo trì phần mềm có nghĩa là :
[a]--Thay đổi và phát triển hệ thống đã được xây dựng.
7 - Khái niệm vòng đời phần mềm:
[b]--Một vòng đời phần mềm là quá trình phát triển theo chu kỳ từ giai đoạn đặc tả đến giai đoạn bảo trì phần mềm.

8 - Trong quá trình phát triển phần mềm, giai đoạn nào có thể lặp lại nhiều lần?
[d]--Đặc tả, thiết kế, lập trình, kiểm định, bảo trì.

9 - Trong các mô hình sau, mô hình nào không phải là mô hình phát triển phần mềm:
[c]--Mô hình song song.
10 - Trong các mô hình phát triển phần mềm sau, mô hình nào chính là mô hình thác nước:
[b]--Mô hình tuần tự tuyến tính.



1 - Trong các thành phần sau, thành phần nào không chính xác trong các giai đoạn gọi thầu:
<1>Đưa thông báo mời thầu lên các phương tiện thông tin đại chúng
<7>Ký hợp đồng.
[c]--1 và 7

2 - Bên mời thầu yêu cầu bên dự thầu phải : "chỉ rõ phần cứng, phần mềm và các dịch vụ cụ thể cần được cung cấp".
[a]--Yêu cầu về kỹ thuật.

3 - Bên mời thầu yêu cầu bên dự thầu phải : "xác định chi tiết lịch trình làm việc, kế hoạch nhân sự, quản lý nhân viên". Là nội dung của:
[d]--Yêu cầu về quản lý.

4 - Bên mời thầu yêu cầu bên dự thầu phải : "Liệt kê các thống tin mà người bán phải cung cấp để đảm bảo tính chác chắn của hợp đồng".Là nội dung của:
[c]--Yêu cầu về thông tin của bên dự thầu.

5 - Trong quá trình bàn giao sản phẩm, yêu cầu về "đào tạo" nghĩa là:
[a]--Bên trúng thầu phải hướng dẫn sử dụng phần mềm cho người sử dụng.
6 - Các mức đặc tả yêu cầu:
 [b]--Định ra yêu cầu, đặc tả yêu cầu, đặc tả thiết kế.

7 - Khái niệm "Định ra yêu cầu", nghĩa là:

[d]--"Yêu cầu được viết bằng ngôn ngữ tự nhiên về các dịch cụ mà hệ thống phải cung cấp."

8 - Khái niệm "Đặc tả yêu cầu", nghĩa là:

[d]--"Các dịch vụ được đặc tả một cách chi tiết, chính xác để có thể dùng làm cơ sở hợp đồng giữa hai bên."

9 - Khái niệm "Đặc tả thiết kế", nghĩa là:

[b]--"Yêu cầu được viết bằng ngôn ngữ chuyên ngành để mô tả chi tiết phần mềm".

10 - "Xác định yêu cầu chức năng", nghĩa là:
[c]--Đặc tả trìu tượng các dịch vụ mà hệ thống phải cung cấp.

1 - Xác định yêu cầu phi chức năng", nghĩa là:
[d]--Đặc tả trìu tượng các ràng buộc mà hệ thống phải tuân theo.
2 - Hệ thống phần mềm phải tuân thủ các ràng buộc về: thời gian, tốc độ xử
[a]--Phi chức năng
3 - Nếu phần mềm thoả mãn yêu cầu các chức năng không gây mâu thuẫn, có nghĩa phần mềm đã đáp ứng được nguyên tắc:
[b]--Tráng kiện

4 - Trong yêu cầu phi chức năng, phát biểu "Yêu cầu về hệ thống được phát triển như tốc độ, bộ nhớ, độ tin cậy, tính di chuyển được, tính dùng lại được,.." là:
[c]--Các yêu cầu về sản phẩm.

5 - Trong yêu cầu phi chức năng, phát biểu "Yêu cầu về các chuẩn phải tuân theo, các yêu cầu về ngôn ngữ lập trình, phương pháp thiết kế, yêu cầu về phân phát,...." là:
[d]--Yêu cầu về quá trình phát triển phần mềm.

6 - Thẩm định là công việc chỉ được thực hiện sau:
[d]--Tất cả các giai đoạn phát triển phần mềm như: đặc tả, thiết kế, lập trình.

7 - Lý do khiến người phát triển phần mềm phải tạo nguyên mẫu:
[d]--Tất cả đều đúng

8 - Tạo nguyên mẫu giúp cho chi phí sửa lỗi giảm xuống, vì:
[c]--Tạo nguyên mẫu cho phép phát hiện sớm các lỗi, giúp cho việc sửa chữa diễn ra vào thời kỳ đầu của quá trình phát triển phần mềm. Vì vậy chi phí bảo trì giảm.

9-Trong6.giai.đoạn.của.thiết.kế.phần.mềm:
1/Thiết.kế.kiến.trúc
2/Thiết.kế.cấu.trúc.dữ.liệu
3/Đặc.tả.trìu.tượng
4/Thiết.kế.thuật.toán
5/Thiết.kế.giao.diện
6/Thiết.kế.các.thành.phần.
Quá trình thiết kế chi tiết được thực hiện theo thứ tự:
[a]--1 – 3 – 5 – 6 – 2 – 4.
10 - Trong thiết kế phần mềm, giai đoạn thiết kế kiến trúc là:
[b]--Các hệ con tạo nên hệ tổng thể và các quan hệ của chúng là được minh định và ghi thành tài liệu.

1 - Trong thiết kế phần mềm, giai đoạn đặc tả trìu tượng là:
[b]--Đối với các hệ con, đặc tả các dịch vụ mà nó phải cung cấp và các ràng buộc mà nó phải tuân theo.

2 - Trong thiết kế phần mềm, giai đoạn thiết kế cấu trúc dữ liệu là:
[c]--Các cấu trúc dữ liệu được dùng trong việc thực hiện hệ thống được thiết kế chi tiết và được đặc tả.

3 - Trong thiết kế phần mềm, giai đoạn thiết kế giao diện có nội dung:
[d]--Giao diện của từng hệ con với các hệ con khác được thiết kế và ghi thành tài liệu.

4 - Trong thiết kế phần mềm, giai đoạn thiết kế các thành phần có nội dung:
[c]--Các dịch vụ cung cấp bởi một hệ con được phân chia qua các thành phần của hệ con đó.

5-Thiết.kế.được.dùng.để:
àLàm.cơ.sở.hợp.đồng.giữa.hai.bên
 

6 - Trong các phát biểu sau, phát biểu nào là đúng:
[c]--Thiết kế hướng đối tượng có thể dùng cho cả lập trình hướng đối tượng và lập trình hướng chức năng.

7 - Một số tiêu chí đánh giá về chất lượng thiết kế:
[b]--Sự kết dính, sự ghép nối, sự hiểu được, tính thích nghi
8 - Trong các tính chất sau, tính chất nào là đặc trưng của thiết kế hướng đối tượng:
[b]--Các đối tượng liên lạc với nhau thông qua trao đổi thông báo.

9 - Trong các đặc điểm sau, đặc điểm nào không là ưu điểm của thiết kế hướng đối tượng?
[a]--Dễ học và dễ sử dụng.

10 - Trong các đặc điểm sau, đặc điểm nào không là ưu điểm của thiết
[c]--Nến thiết kế theo hướng chức năng nếu cần che dấu dữ liệu.
1 - Trong kỹ thuật "Phân hoạch tương đương" của phương pháp kiểm định phần mềm kỹ thuật hộp đen, nếu điều kiện đầu vào "xác định một phần tử của một tập hợp", thì phân hoạch kiểm định thành:
[b]--2 lớp tương đương.
2 - Trong kỹ thuật "Phân hoạch tương đương" của phương pháp kiểm định phần mềm kỹ thuật hộp đen, nếu điều kiện đầu vào "là một biến hoặc một biểu thức logic", thì phân hoạch kiểm định thành:
[b]--2 lớp tương đương.

3 - Trong kỹ thuật "Phân tích giá trị biên" của phương pháp kiểm định hộp đen, nếu "điều kiện vào xác định một miền giới hạn bởi các giá trị a và b", thì:
[d]--Xác định các trường hợp kiểm định ngay tại a và b, đồng thời ngay trên và ngay dưới a và b.
                   
4 - Nội dung nào chính là phương pháp kiểm định hộp trắng:
[b]--"Cho phép kiểm tra cấu trúc bên trong của phần mềm với mục đích đảm bảo rằng tất cả các câu lệnh và điều kiện sẽ được thực hiện ít nhất một lần,..".

5 - Trong các nội dung sau, nội dung nào chính là kiểm định đơn vị:
[c]--Kiểm định tập trung vào việc xác minh trên thành phần nhỏ nhất của thiết kế phần mềm như module hoặc lớp.

6 - Trong các nội dung sau, nội dung nào chính là kiểm định tích hợp:
[a]--Là một kỹ thuật hệ thống để xây dựng cấu trúc chương trình trong khi tiến hành các kiểm định để phát hiện các lỗi liên kết.

7 - Kiểm định Alfa là:
[d]--Kiểm định được tiến hành ngay tại cơ quan của người phát triển phần mềm.

8 - Kiểm định Alfa là loại kiểm định có tính chất:
[b]--Chủ quan
9 - Bảo trì phần mềm được định nghĩa thông qua mô tả 4 hoạt động:
[c]--Bảo trì hiệu chỉnh, bảo trì tiếp hợp, bảo trì hoàn thiện, bảo trì phòng ngừa.
10 - Trong quá trình bảo trì phần mềm: "quá trình phân tích và chỉnh sửa một hay nhiều lối" được gọi là:
[a]--Bảo trì hiệu chỉnh.

1 - Trong quá trình bảo trì phần mềm: "sửa đổi phần mềm để thích ứng với những thay đổi của môi trường" được gọi là:
[a]--Bảo trì tiếp hợp.
2 - Trong quá trình bảo trì phần mềm: "thay đổi các chức năng đã có, các mở rộng tổng quát, các khả năng mới,.." gọi là:
[c]--Bảo trì hoàn thiện.
3 - Trong quá trình bảo trì phần mềm: "là những thay đổi để cải thiện các tính năng bảo trì như độ tin cậy, cung cấp nền tảng tốt hơn cho những mở rộng sau này…" gọi là:
[b]--Bảo trì phòng ngừa.
4 - Bảo trì có cấu trúc là:
[d]--Bảo trì có hệ thống được phát triển theo đúng trình tự của kỹ nghệ phần mềm (phân tích, thiết kế, lập trình , kiểm định).
5-Cho.công.thức.của.bảo.trì:
M=p(K*exp(c-d)).
Trong đó: tham số p là:
[c]--Công việc làm.
6-Cho.công.thức.của.bảo.trì:
M=p(K*exp(c-d)).
Trong đó: tham số K là:
[a]--Hằng số kinh nghiệm.
7-Cho.công.thức.của.bảo.trì:
M=p(K*exp(c-d)).
Trong đó: tham số c là:
[d]--Độ phức tạp cho việc thiếu thiết kế về cấu trúc và dữ liệu.

8-Cho.công.thức.của.bảo.trì:
M=p(K*exp(c-d)).
Trong đó: tham số d là:
[b]--Đánh giá mức độ hiểu biết về phần mềm.
9 - Kiểm định đơn vị được thực hiện ở giai đoạn:
[a]--Lập trình.
10-Để.phát.hiện.các.lỗi.trong:
-Giaodiệnmodule.
-Cấutrúcdữliệucụcbộ.
-Điềukiệnbiên.
-Đườngdẫnđộclập.
-Đườngdẫnxửlýlỗi.
Ta cần sử dụng chiến lược kiểm định nào?
[d]--Kiểm định đơn vị.

1 - Phần mềm được coi là không có lỗi nếu:
[d]--Phần mềm không đúng với đặc tả.
2 - Thứ tự 4 hoạt động trong hệ thống thứ lỗi là:
[c]--Phát hiện lỗi, định ra mức thiệt hại, hồi phục sau khi gặp lỗi, chữa lỗi.
3 - Lập trình phòng thủ là:
[b]--Lập trình để có thể tự động sửa chữa các lỗi có thể xảy ra.
4 - Các thành phần có thể sử dụng lại trong quá trình lập trình:
[d]--Các hệ con ứng dụng, các hệ con và các hàm, các mô đun hoặc các đối tượng,..
5 - Kiểm định phần mềm là:
[c]--Quá trình thực hiện một hệ thống phần mềm để xác định xem phần mềm đó có đúng với đặc tả không và thực hiện trong môi trường như mong đợi không?

6 - Phương pháp nào không là phương pháp kiểm định phần mềm?
[a]--Phương pháp đồ thị nhân quả.

7 - Nội dung nào chính là phương pháp kiểm định hộp đen:
[b]--"Chỉ tập trung vào các yêu cầu chức năng của phần mềm bằng cách cho nhập giá trị đầu vào và xem xét kết quả ra có muốn như mong đợi hay không?".

8 - Trong các kỹ thuật sau, kỹ thuật nào không nằm trong phương pháp kiểm định hộp đen:
[c]--Kiểm định hệ thời gian thực.

9 - Trong kỹ thuật "Phân hoạch tương đương" của phương pháp kiểm định phần mềm kỹ thuật hộp đen, nếu điều kiện đầu vào "xác định một miền giá trị", thì phân hoạch kiểm định thành:
[c]--3 lớp tương đương.

10 - Trong kỹ thuật "Phân hoạch tương đương" của phương pháp kiểm định phần mềm kỹ thuật hộp đen, nếu điều kiện đầu vào "yêu cầu một giá trị xác định", thì phân hoạch kiểm định thành:
[c]--3 lớp tương đương.
1 - Những thành phần kiến trúc trong kỹ thuật sản phẩm là :
[a]--Dữ liệu, phần cứng, phần mềm, con người
2 - Đặc tả hệ thống mô tả "
[a]--Chức năng và hành vi của hệ thống dựa vào máy tính

3 - Cách tốt nhất để đưa tới việc xem xét việc đánh giá yêu cầu là :
[d]--Dùng danh sách các câu hỏi kiểm tra để kiểm tra mỗi yêu cầu

4 - Sử dụng bảng lần vết giúp :
[c]--Xác định, điều khiển và theo vết những thay đổi yêu cầu

5 - Mẫu mô hình hệ thống chứa thành phần :
[d]--Tất cả mục trên

6 - 16. Tác vụ nào không được biểu diễn như là một phần của phân tích yêu cầu phần mềm :
[c]--Lập kế hoạch và lịch biểu

7 - Đích của kỹ thuật đặc tả ứng dụng thuận tiện (FAST - facilitated application specification techniques) là nhờ người phát triển và khách hàng :
[c]--Làm việc với nhau để phát triển một tập những yêu cầu ban đầu

8 - Ai là người không thích hợp để tham dự vào nhóm FAST (facilitated application specification techniques) :
[d]--Nhân viên tài chánh cao cấp

9 - Những yêu cầu nào được quan tâm suốt QFD (quality function deployment) :
[c]--Technology requirements

10 - Phân tích giá trị được dẫn ra như là một phần của QFD (quality function deployment) nhằm xác định :
[c]--Độ ưu tiên quan hệ của những yêu cầu qua việc triển khai chức năng, tác vụ và thông tin
1 - Use-cases là một kịch bản mà mô tả :
[a]--Phần mềm thực hiện như thế nào khi được dùng trong một tình huống cho trước

2 - Nội dung thông tin biểu diễn những đối tượng điều khiển và dữ liệu riêng biệt mà bao gồm những thông tin mà :
[d]--Được biến đổi bởi phần mềm

3 - Dòng thông tin biểu diễn cách thức mà dữ liệu và điều khiển :
[b]--Biến đổi khi mỗi lần dịch chuyển qua hệ thống

4 - Cấu trúc thông tin biểu diển tổ chức nội của :
[d]--Những dữ liệu khác nhau và những mục điều khiển

5 - Loại mô hình nào được tạo ra trong phân tích yêu cầu phần mềm :
[a]--Chức năng và hành vi

6 - Trong ngữ cảnh của phân tích yêu cầu, hai loại phân tách vấn đề là:
[b]--horizontal and vertical

7 - Khung nhìn (view) nào được quan tâm đầu tiên trong phân tich yêu cầu phần mềm :
[c]--essential view

8 - Tạo nguyên mẫu tiến hóa thường thích được dùng hơn tạo nguyên mẫu bỏ đi bởi vì :
[d]--Dùng không hơn 7 màu dương và 2 màu âm trong biểu đồ

9 - Những mục nào không là nguyên tắc cho việc biểu diễn yêu cầu :
[d]--Dùng không hơn 7 màu dương và 2 màu âm trong biểu đồ

10 - Mục nào không là một mục đích cho việc xây dựng một mô hình phân tích
[c]--Phát triển một giải pháp tóm tắt cho vấn đề

1 - Sơ đồ luồng dữ liệu :
[b]--Đưa ra hình ảnh những chức năng biến đổi luồng dữ liệu

2 - Biểu đồ quan hệ thực thể :
[a]--Đưa ra hình ảnh quan hệ giữa các đối tượng dữ liệu

3 - Biểu đồ dịch chuyển trạng thái :
[d]--Chỉ ra những tương tác của hệ thống đối với sự kiện bên ngoài

4 - Phân tích văn phạm của bản tường thuật xử lý là bước đầu tiên tốt nhất để tạo ra :
[b]--Biểu đồ dòng dữ liệu

5 - Biểu đồ dòng điều khiển :
[a]--Cần thiết để mô hình những hệ thống hướng sự kiện

6 - Từ điển dữ liệu chứa những mô tả của mỗi :
[b]--Đối tượng dữ liệu phần mềm

7 - Mô hình thiết kế không quan tâm tới :
[d]--Phạm vi dự án

8 - Sự quan trọng của thiết kế phần mềm có thể được tóm tắt bằng từ đơn :
[d]--Quality

9 - Một đặc trưng của thiết kế tốt là :
[b]--Thực hiện tất cả yêu cầu trong phân tích

10 - Mục nào không là đặc trưng chung trong các phương pháp thiết kế :
[a]--Quản lý cấu hình

1 - Loại trừu tượng nào được dùng trong thiết kế phần mềm :
[d]--Tất cả mục trên

2 - Loại mô hình nào không được có trong kiến trúc phần mềm :
[a]--Dữ liệu

3 - Cấp bậc điều khiển thể hiện :
[b]--Việc tổ chức của các module

4 - Thủ tục phần mềm tập trung vào :
[b]--Xử lý chi tiết của mỗi module riêng biệt

5 - Nguyên nhân của việc sinh lỗi do thiết kế mức thành phần trước khi thiết kế dữ liệu là :
[d]--Cấu trúc dữ liệu thường ảnh hưởng tới cách thức mà thíết kế thành phần phải theo

6 - Mục đích của tham chiếu chéo những yêu cầu (ma trận) trong tài liệu thiết kế là nhằm :
[b]--Xác minh là tất cả các yêu cầu đã được xem xét trong thiết kế

7 - Mục nào không là một phần của kiến trúc phần mềm :
[a]--Chi tiết giải thuật
8 - Đặc trưng nào là đúng cho kho dữ liệu, không phải là cơ sở dữ liệu đặc trưng :
[c]--Tích hợp và không thường thay đổi

9 - Mẫu kiến trúc nhấn mạnh tới những thành phần :
[d]--Tất cả những mục

10 - Nhằm xác định những mẫu kiến trúc hay kết hợp những mẫu phù hợp nhất cho hệ thống đề nghị, kỹ thuật yêu cầu dùng để khám phá :
[b]--Đặc trưng và ràng buộc

1 - Tiêu chuẩn đánh giá chất lượng của một thiết kế kiến trúc phải dựa vào :
[b]--Dữ liệu và điều khiển của hệ thống

2 - Trong phương pháp phân tích kiến trúc, mô tả mẫu kiến trúc thường dùng khung nhìn :
[d]--Tất cả các mục trên

3 - Khi một luồng tổng thể trong một đoạn của biểu đồ luồng dữ liệu có tính trình tự cao và theo sau những những đường thẳng sẽ thể hiện :
[d]--Luồng biến đổi (transform)
4 - Khi luồng thông tin trong một đoạn của sơ đồ luồng dữ liệu thể hiện bằng một mục đơn mà bẩy một luồng dữ liệu khác theo một trong nhiều đường sẽ thể hiện :
[c]--Luồng giao dịch (transaction)
5 - Một bổ sung cần thiết nhằm biến đổi hay ánh xạ giao dịch để tạo một thiết kế kiến trúc đầy đủ là :
[c]--Mô tả việc xử lý cho mỗi module

6 - Những nguyên lý thiết kế giao diện nào không cho phép người dùng còn điều khiển tương tác với máy tính :
[d]--Chỉ cung cấp một cách thức xác định cứng khi hoàn thành tác vụ

7 - Những nguyên lý thiết kế giao diện cho phép người dùng ít phải nhớ "
[d]--cả những mục trên

8 - Sự toàn vẹn (consistency) giao diện ngầm định :
[d]--Câu a và b

9 - Mô hình nào đưa ra hình ảnh tiền sử (profile) người dùng cuối của hệ thống dựa vào máy tính "
[b]--Mô hình người dùng

10 - Mô hình nào đưa ra hình ảnh hệ thống trong đầu của người dùng cuối :
[d]--Mô hình nhận thức hệ thống


1 - Mô hình nào đưa ra hình ảnh look and feel cho giao diện người dùng cùng những thông tin hỗ trợ :
[c]--Mô hình hình ảnh hệ thống

2 - Những hoạt động khung nào thường không kết hợp với những quá trình thiết kế giao diện người dùng :
[a]--Ước lượng giá

3 - Hướng tiếp cận nào để những phân tích tác vụ của người dùng trong thiết kế giao diện người dùng :
[d]--Quan sát thao tác người dùng

4 - Những vấn đề thiết kế chung nổi trội lên trong hầu hết giao diện người dùng :
[b]--Xử lý lỗi và thời gian đáp ứng của hệ thống

5 - Những hệ thống phát triển giao diện người dùng đặc trưng cung cấp những kỹ thuật cho việc xây dựng những nguyên mẫu giao diện bao gồm :
[d]--Tất cả mục trên

6 - Những bản câu hỏi có ý nghĩa nhất đối với những người thiết kế giao diện khi được hoàn tất bởi :
[c]--Người dùng sản phẩm

7 - Nhiều đo lường hữu dụng có thể thu thập khi quan sát những người dùng tương tác với hệ thống máy tính gồm :
[d]--Thời gian đọc tài liệu trợ giúp

8 - Một bảng quyết định được dùng "
[d]--Khi một tập phức tạp những điều kiện và hoạt động xuất hiện trong thành phần

9 - Ngôn ngữ thiết kế chương trình (PDL) thường là một :
[a]--Sự kết hợp giữa cấu trúc lập trình và văn bản tường thuật

10 - Những độ đo phức tạp vòng (cyclomatic complexity metric) cung cấp cho người thiết kế thống tin về số :
[c]--Những đường logic độc lập trong chương trình


1 - Kiểm thử điều kiện là một kỹ thuật kiểm thử cấu trúc điều khiển mà những tiêu chuẩn dùng để thiết kế test-case :
[b]--Thử thách điều kiện logic trong module phần mềm

2 - Kiểm thử luồng dữ liệu là một kỹ thuật kiểm thử cấu trúc điều khiển mà những tiêu chuẩn dùng để thiết kế test-case
[c]--Chọn những đường dẫn kiểm tra dựa vào những vị trí và dùng những biến

3 - Kiểm thử lặp là một kỹ thuật kiểm thử cấu trúc điều khiển mà những tiêu chuẩn dùng để thiết kế test-case :
[d]--Tập trung vào việc kiểm thử việc giá trị những cấu trúc lặp

4 - Kiểm thử Black-box cố gắng tìm ra những lỗi :
[d]--Tất cả mục trên

5 - Lý do tốt nhất cho việc dùng nhóm kiểm tra phần mềm độc lập là :
[d]--Mâu thuẩn về quyền lợi giữa những người phát triển và những người kiểm thử sẽ giảm

6 - Trong một dự án thành công sử dụng chiến lược :
[d]--Tất cả mục trên

7 - Kiểm thử tích hợp Top-down có thuận lợi chính là :
[b]--Những điểm quyết định chính được kiểm thử sớm

8 - Kiểm thử tích hợp bottom-up có những thuận lợi chính :
[c]--Không có những stub (nhánh) cần phải viết

9 - Hướng debug :
[d]--Tất cả các mục

10 - Những kiểm tra chấp nhận thường được đưa ra bởi :
[b]--Những người dùng cuối

1 - Câu hỏi không được kỹ sư phần mềm hiện nay quan tâm nữa :
[a]--Tại sao chi phí phần cứng máy tính quá cao?

2 - Ba giai đoạn tổng quát của công nghệ phần mềm :
[a]--definition, development, support

3 - Mô hình phát triển ứng dụng nhanh:
[c]--Sự ráp nối tốc độ cao của mô hình tuần tự tuyến tính

4 - Mô hình tiến trình phần mềm tiến hóa :
[d]--Tất cả các mục

5 - Mô hình phát triển phần mềm lặp lại tăng thêm :
[b]--Một hướng tốt khi cần tạo nhanh một sản phẩm thực thi lõi

6 - Mô hình phát triển phần mềm xoắn ốc :
[c]--Bao gồm việc đánh giá những rủi ro phần mềm trong mỗi vòng lặp

7 - Mô hình phát triển dựa vào thành phần :
[c]--Dựa vào những kỹ thuật hỗ trợ đối tượng

8 - Để xây dựng mô hình hệ thống, kỹ sư phải quan tâm tới một trong những nhân tố hạn chế sau :
[a]--Những giả định và những ràng buộc
9 - Trong kỹ thuật tiến trình nghiệp vụ, ba kiến trúc khác nhau được kiểm tra
[a]--Hạ tầng kỹ thuật, dữ liệu, ứng dụng
10 - Thành phần nào của kỹ thuật tiến trình nghiệp vụ là trách nhiệm của kỹ sư phần mềm :
[b]--Thiết kế hệ thống nghiệp vụ


Chương 1: Tổng quan về công nghệ phần mềm
Câu 1: Phần mềm (software) gồm:
a)     Các chương trình điều khiển mọi hoạt động của máy vi tính  
Câu 2: Công nghệ (engineering) là:
a)     Cách sử dụng các công cụ, các kỹ thuật trong cách giải quyết một vấn đề nào đó.
Câu 3: Công nghệ phần mềm (software engineering) là:
a)     Việc áp dụng các công cụ, các kỹ thuật một cách hệ thống trong việc phát triển các ứng dụng dựa trên máy tính.
Câu 4: Vai trò của con người trong ngành công nghiệp phần mềm
a)     Con người là yếu tố quyết định trong ngành công nghiệp phần mềm.
Câu 5: Số lượng người trong một nhóm phát triển phần mềm thường là:
a)     Một nhóm người tùy theo yêu cầu của phần mềm.
Câu 6: Yêu cầu chuyên môn của các thành viên trong 1 nhóm phát triển phần mềm:
a)     Mỗi thành viên trong nhóm phải có một số kiến thức cần thiết tuỳ thuộc vào vai trò trong nhóm để phát triển phần mềm.
Câu 7: Tầng quy trình trong quy trình 3 tầng (quy trình, phương pháp, công cụ) liên quan đến các công việc:
a)     Quản trị phát triển phần mềm
Câu 8: Tầng phương pháp trong quy trình 3 tầng (quy trình, phương pháp, công cụ) liên quan đến các công việc:
a)     Cách thức, công nghệ, kỹ thuật để làm phần mềm
Câu 9: Tầng công cụ trong quy trình 3 tầng (quy trình, phương pháp, công cụ) liên quan đến các công việc:
a)     Cung cấp các phương tiện hỗ trợ tự động hay bán tự động trong quá trình sản xuất phần mềm
Câu 10: Kỹ sư phần mềm phải có một số kỹ năng cơ bản như:
a)     Tất cả đều đúng.
Câu 11: Phát triển (development) phần mềm được bắt đầu từ khi:
a)     Quyết định phát triển sản phẩm phần mềm và kết thúc khi sản phẩm phần mềm được chuyển giao cho người sử dụng.
Câu 12: Các đặc tính phần mềm là tất cả các điểm chung cho mọi ứng dụng gồm:
a)     Cả a, b, c
Câu 13: Trong các mô hình phát triển phần mềm sau, mô hình nào chính là mô hình thác nước:
a)     Mô hình tuần tự tuyến tính.
Câu 14: Trong các mô hình sau, mô hình nào không phải là mô hình phát triển phần mềm:
a)     Mô hình song song.
Câu 15: Trong quá trình phát triển phần mềm, giai đoạn nào có thể lặp lại nhiều lần?
a)     Đặc tả, thiết kế, lập trình, kiểm định, bảo trì.
Câu 16: Khái niệm vòng đời phần mềm:
a)     Một vòng đời phần mềm là quá trình phát triển theo chu kỳ từ giai đoạn đặc tả đến giai đoạn bảo trì phần mềm.
Câu 17: Mô hình phát triển phần mềm xoắn ốc :
a)     Nhiều hỗn độn hơn với mô hình gia tăng
Câu 18: Thành phần nào của kỹ thuật tiến trình nghiệp vụ là trách nhiệm của kỹ sư phần mềm :
a)     Thiết kế hệ thống nghiệp vụ
Câu 19: Trong các mô hình phát triển phần mềm sau, mô hình nào được xem là mô hình của cách tiếp cận hướng đối tượng:
a)     Mô hình đài phun nước
Câu 20: Người dùng có vai trò như thế nào trong giai đoạn phát triển phần mềm?
a)     Tất cả các vai trò trên.


Chương 2: Tiêu chuẩn của phần mềm
Câu 1: Mục tiêu của công nghệ phần mềm là:
a)     Sản xuất ra những phần mềm tốt, có chất lượng cao với chi phí phù hợp:
Câu 2: Đối với nhà sản xuất, phần mềm có chất lượng là phần mềm thỏa mãn các tính chất?
a)     Tính dùng lại, Dễ bảo trì, Dễ mang chuyển, Dễ mở rộng.
Câu 3: Đối với nhà sản xuất, phần mềm có chất lượng là phần mềm thỏa mãn các tính chất?
a) Tính đúng đắn, tính tiện dụng, tính hiệu quả, tính tiến hóa, tính tương thích, tính bảo mật, tính an toàn.
Câu 4: Phần mềm thỏa mãn tính đúng đắn trong yêu cầu chất lượng phần mềm là:
a)     Phần mềm thực hiện đầy đủ và chính xác các yêu cầu của người dùng.
Câu 5: Phần mềm tiện dụng là phần mềm:
a)     Dễ học, dễ sử dụng, có giao diện trực quan tự nhiên, thân thiện gần gũi với người sử dụng.
Câu 6: Phần mềm thỏa mãn tính hiệu quả là phần mềm:
a)     Sử dụng tối ưu các tài nguyên máy tính (CPU- tốc độ, bộ nhớ - dung lượng lưu trữ,…).
Câu 7: Phần mềm thỏa mãn tính tiến hóa là phần mềm:
a)     Phần mềm dễ sửa đổi theo những yêu cầu mới, ngữ cảnh mới.
Câu 8: Phần mềm thỏa mãn tính tương thích là phần mềm:
a)     Phần mềm dễ sửa đổi theo những yêu cầu mới, ngữ cảnh mới.
Câu 9: Phần mềm thỏa mãn tính bảo mật là phần mềm:
a)     Phân quyền người dùng, mã hoá thông tin, mã hoá password, tránh các xâm nhập bất hợp pháp.
Câu 10: Phần mềm thỏa mãn tính an toàn là phần mềm:
a)     Có cơ chế sao lưu và phục hồi dữ liệu, xác nhận trước khi xoá, không cho phép các thao tác xoá không hợp lệ
Câu 11: Đối với nhà sản xuất, phần mềm thỏa mãn tính dùng lại là phần mềm:
a)     Phần mềm viết theo hướng đối tượng (bao gồm các thành phần độc lập) dễ dàng sử dụng lại cho phần mềm khác, dự án khác.
Câu 12: Đối với nhà sản xuất, phần mềm dễ bảo trì là phần mềm:
a)     Khi cần bảo trì dễ dàng biết được thành phần nào bảo trì và việc bảo trì không ảnh hưởng đến các thành phần khác.
Câu 13: Đối với nhà sản xuất, phần mềm dễ mang chuyển là phần mềm:
a)     Dễ dàng cài đặt, chuyển đổi từ máy này sang máy khác
Câu 14: Đối với nhà sản xuất, phần mềm dễ mở rộng là phần mềm:
a)     Khi cần thêm tính năng, thuộc tính mới không phải phân tích, thiết kế lại từ đầu.
Câu 15: Tham gia lập kế hoạch dự án gồm:
a)     Người quản lý, người sử dụng và kiểm toán
Câu 16: Thuật toán nghiên cứu tính khả thi của một số dự án phần mềm gồm 4 bước theo thứ tự:
1.      Tổ chức nhóm nghiên cứu tính khả thi: giai đoạn 1
2.      Tìm kiếm lời giải: giai đoạn 2
3.      Phân tích tính khả thi: giai đoạn 3
4.      Lựa chọn lời giải: giai đoạn 4
a)     Tổ chức nhóm nghiên cứu tính khả thi, Tìm kiếm lời giải, Phân tích tính khả thi, Lựa chọn lời giải.



1/. Tiêu chuẩn ISO-14598 đưa ra:
C/. Đưa ra quy trình đánh giá chất lượng cho sản phẩm phần mềm. (đ)
2/. Trong phát triển phần mềm, yếu tố nào quan trọng nhất?
A/. Con người. (đ)
3/. Kỹ thuật nào sau đây là xây dựng phần mềm từ các thành phần đã được thiết kế
trong lĩnh vực công nghệ khác nhau?
C/. Component architecture.  (đ)
4/. IEEE 830-1993 là một khuyến nghị tiêu chuẩn cho
A/. Software requirement specification. (đ)
5/. Kỹ sư phần mềm không cần
C/. Lập trình thành thạo bằng một ngôn ngữ lập trình. (đ)
6/. Tính khả thi của phần mềm dựa vào các yếu tố sau:
C/. Công nghệ, tiền bạc, thời gian và tài nguyên. (đ)
7/. Phần mềm dự báo thời tiết thu thập các số liệu về nhiệt độ, độ ẩm, … xử lý tính toán
để cho ra các dự báo thời tiết là 1 ví dụ của loại phần mềm:
C/. Phần mềm thời gian thực (Real time software)  (đ)
8/. Loại phần mềm gì là 1 tập hợp các chương trình để cung cấp dịch vụ cho các
chương trình khác:
C/. Phần mềm thời gian thực (Real time software) (đ)
9/. Phần mềm quản lý sinh viên của 1 trường là:
D/. Phần mềm nghiệp vụ (Business software)
10/. Phần mềm quản lý tài chính của một công ty là: A/. Phần mềm nghiệp vụ (Business software) 
13/. Mối quan tâm chính của công nghệ phần mềm là gì?
B/. Sản xuất phần mềm. (đ)
14/. Điều nào là đặc trưng của một thiết kế phần mềm tốt?
B/. Thực hiện tất cả các yêu cầu trong mô hình phân tích. (đ)

1/. Theo thống kê từ những thách thức đối với công nghệ phần mềm thì lỗi nhiều nhất là
do
B/. Phân tích yêu cầu (đ)
2/. Yêu cầu có thể chia ra thành các lọai nào sau đây?
B/. Chức năng, phi chức năng  (đ).
3/. 2 hình thức dùng mô tả yêu cầu là:
A/. Yêu cầu người dùng và yêu cầu hệ thống. (đ)
4/. Loại khả thi nào không được xem xét trong phân tích khả thi
D/. Khả thi về chất lượng . (đ)
5/. Tính chất cần có của dữ liệu trong phân tích yêu cầu
A/. Có định hướng thời gian. (đ)
7/. Tính chất nào không cần thiết cho phân tích dữ liệu ?
C/.  Bảo mật. (đ)
8/. Phân tích yêu cầu bao gồm 3 hoạt động theo đúng thứ tự ?
B/. Làm rõ yêu cầu, xem xét yêu cầu, làm tài liệu yêu cầu.  
9/. Làm rõ yêu cầu (Eliciting requirements) là
A/. Giao tiếp với khách hàng và người sử dụng để xác định các yêu cầu của
họ.

10/. Yêu cầu nào là yêu cầu chức năng?
B/. Thực hiện thao tác thêm, xem, xóa, sửa dữ liệu nghiệp vụ.
11/. SRS là viết tắt của:
A/. Software Requirement Specification. 
15/. Kết quả cuối cùng của giai đoạn xác định và phân tích yêu cầu là:
A/. Tài liệu SRS.  (đ)
16/. Mục nào sau đây không bao gồm trong tài liệu SRS?
D/. Hướng dẫn sử dụng (đ)
17/. Loại hình đặc tả nào được dùng phổ biến trong tài liệu SRS?
C/. Đặc tả bằng sơ đồ. (đ)
18/. Độ lớn (Volume) trong phân tích yêu cầu là:.
C/. Là số lượng các nghiệp vụ hệ thống phải tiến hành trong một chu kỳ
nào đó. (đ)
19/. Sơ đồ nào sau đây không cần thiết trong phân tích yêu cầu? D/. Activity Diagram.
20/. Có bao nhiêu đặc trưng khi xem xét phân tich yêu cầu khả thi? B/. 3
21/. Có bao nhiêu giai đoạn  trong phân tích yêu cầu?C/. 5
22/.  Có bao nhiêu nguyên lý đặc tả yêu cầu?D/. 8 
23/. CASE là từ viết tắt của
B/. Computer Aided Software Engineering.
24/. Kỹ thuật thu thập yêu cầu nào cần đến chuyên gia. C/. Expert
25/. Kỹ thuật thu thập yêu cầu cầu nào cần đến sự nhất trí của số đông?
B/.  Facilitated Workshops    
26/. Mục nào không dùng cho đặc tả yêu cầu:
D/. Đặc tả kỹ thuật.
27/. Mục nào không dùng cho đặc tả yêu cầu:
B/. Đặc tả mô hình.   
28/. Loại hình đặc tả nào không có?
C/. Đặc tả toán học. 
29/. Xác nhận yêu cầu (Requirements Validation) được tiến hành bởi
C/. Phân tích viên và các bên có liên quan.

30/. Khi xác nhận yêu cầu, cần phải làm sáng tỏ các từ nào sau đây:
A/. “một số”, “đôi khi”, “thường”, “thông thường”, “bình thường”, “phần
lớn”, “đa số”. 
1. Câu hỏi không được kỹ sư phần mềm hiện nay quan tâm nữa
a. Tại sao chi phí phần cứng máy tính quá cao?
2. Mô hình phát triển ứng dụng nhanh
a. definition, development, support
3. Mô hình phát triển ứng dụng nhanh
c. Sự ráp nối tốc độ cao của mô hình tuần tự tuyến tính
4.  Mô hình tiến trình phần mềm tiến hóa
d. Tất cả các mục
5.  Mô hình phát triển phần mềm lặp lại tăng thêm
b. Một hướng tốt khi cần tạo nhanh một sản phẩm thực thi lõi
6.  Mô hình phát triển phần mềm xoắn ốc
c. Bao gồm việc đánh giá những rủi ro phần mềm trong mỗi vòng lặp
7.  Mô hình phát triển dựa vào thành phần
c. Dựa vào những kỹ thuật hỗ trợ đối tượng
8. Để xây dựng mô hình hệ thống, kỹ sư phải quan tâm tới một trong những nhân
tố hạn chế sau :
a. Những giả định và những ràng buộc
9.  Trong kỹ thuật tiến trình nghiệp vụ, ba kiến trúc khác nhau được kiểm tra
a. Hạ tầng kỹ thuật, dữ liệu, ứng dụng
10.  Thành phần nào của kỹ thuật tiến trình nghiệp vụ là trách nhiệm của kỹ sư phần
mềm
b. Thiết kế hệ thống nghiệp vụ
11.  Những thành phần kiến trúc trong kỹ thuật sản phẩm là
a. Dữ liệu, phần cứng, phần mềm, con người
12. Đặc tả hệ thống mô tả
a. Chức năng và hành vi của hệ thống dựa vào máy tính
13. Cách tốt nhất để đưa tới việc xem xét việc đánh giá yêu cầu là
d. Dùng danh sách các câu hỏi kiểm tra để kiểm tra mỗi yêu cầu
14.  Sử dụng bảng lần vết giúp
c. Xác định, điều khiển và theo vết những thay đổi yêu cầu
15.  Mẫu mô hình hệ thống chứa thành phần
d. Tất cả mục trên
16.  Tác vụ nào không được biểu diễn như là một phần của phân tích yêu cầu PM
c. Lập kế hoạch và lịch biểu
17.  Đích của kỹ thuật đặc tả ứng dụng thuận tiện (FAST - facilitated application
specification techniques) là nhờ người phát triển và khách hàng
c. Làm việc với nhau để phát triển một tập những yêu cầu ban đầu
18.  Ai là người không thích hợp để tham dự vào nhóm FAST (facilitated application
specification techniques)
d. Nhân viên tài chánh cao cấp
19.  Những yêu cầu nào được quan tâm suốt QFD (quality function deployment)
d. technology requirements
20.  Phân tích giá trị được dẫn ra như là một phần của QFD (quality function

deployment) nhằm xác định
c. Độ ưu tiên quan hệ của những yêu cầu qua việc triển khai chức
năng, tác vụ và thông tin
21. Use-cases là một kịch bản mà mô tả
a. Phần mềm thực hiện như thế nào khi được dùng trong một tình
huống cho trước
22.  Nội dung thông tin biểu diễn những đối tượng điều khiển và dữ liệu riêng biệt
mà bao gồm những thông tin mà
d. Được biến đổi bởi phần mềm
23.  Dòng thông tin biểu diễn cách thức mà dữ liệu và điều khiển
b. Biến đổi khi mỗi lần dịch chuyển qua hệ thống
24. Cấu trúc thông tin biểu diển tổ chức nội của
d. Những dữ liệu khác nhau và những mục điều khiển
25.  Loại mô hình nào được tạo ra trong phân tích yêu cầu phần mềm
a. Chức năng và hành vi
26.  Trong ngữ cảnh của phân tích yêu cầu, hai loại phân tách vấn đề là
b. horizontal and vertical
27.  Khung nhìn (view) nào được quan tâm đầu tiên trong phân tich yêu cầu phần
mềm
c. essential view
28.  Tạo nguyên mẫu tiến hóa thường thích được dùng hơn tạo nguyên mẫu bỏ đi
bởi vì
a. Cho phép tái sử dụng nguyên mẫu đầu
29.  Những mục nào không là nguyên tắc cho việc biểu diễn yêu cầu
d. Dùng không hơn 7 màu dương và 2 màu âm trong biểu đồ
30.  Mục nào không là một  mục đích cho việc xây dựng một mô hình phân tích
c. Phát triển một giải pháp tóm tắt cho vấn đề
31.  Sơ đồ luồng dữ liệu
b. Đưa ra hình ảnh những chức năng biến đổi luồng dữ liệu
32.  Biểu đồ quan hệ thực thể
a. Đưa ra hình ảnh quan hệ giữa các đối tượng dữ liệu
33.  Biểu đồ dịch chuyển trạng thái
d. Chỉ ra những tương tác của hệ thống đối với sự kiện bên ngoài
34. Phân tích văn  phạm của bản tường thuật xử lý là bước đầu tiên tốt nhất để tạo
ra
b. Biểu đồ dòng dữ liệu
35.  Biểu đồ dòng điều khiển
a. Cần thiết để mô hình những hệ thống hướng sự kiện
36.  Từ điển dữ liệu chứa những mô tả của mỗi
b. Đối tượng dữ liệu phần mềm
37.  Mô hình thiết kế không quan tâm tới
d. Phạm vi dự án
38.  Sự quan trọng của thiết kế phần mềm có thể được tóm tắt bằng từ đơn
d. Quality
39.  Một đặc trưng của thiết kế tốt là
b. Thực hiện tất cả yêu cầu trong phân tích
40.  Mục nào không là đặc trưng chung trong các phương pháp thiết kế
a. Quản lý cấu hình
41.  Loại trừu tượng nào được dùng trong thiết kế phần mềm
d. Tất cả mục trên
42.  Loại mô hình nào không được có trong kiến trúc phần mềm
a. Dữ liệu
43.  Cấp bậc điều khiển thể hiện
b. Việc tổ chức của các module
44.  Thủ tục phần mềm tập trung vào
b. Xử lý chi tiết của mỗi module riêng biệt
45. Nguyên nhân của việc sinh lỗi do thiết kế mức thành phần trước khi thiết kế dữ
liệu là
d. Cấu trúc dữ liệu thường ảnh hưởng tới cách thức mà thíết kế thành
phần phải theo
46.  Mục đích của tham chiếu chéo những yêu cầu (ma trận) trong tài liệu thiết kế là nhằm
b. Xác minh là tất cả các  yêu cầu đã được xem xét trong thiết kế
47.  Mục nào không là một phần của kiến trúc phần mềm
a. Chi tiết giải thuật
48.  Đặc trưng nào là đúng cho kho dữ liệu, không phải là cơ sở dữ liệu đặc trưng
c. Tích hợp và không thường thay đổi
49.  Mẫu kiến trúc nhấn mạnh tới những thành phần
d. Tất cả những mục
50.  Nhằm xác định những mẫu kiến trúc hay kết hợp những mẫu phù hợp nhất cho
hệ thống đề nghị, kỹ thuật yêu cầu dùng để khám phá
b. Đặc trưng và ràng buộc
51.  Tiêu chuẩn đánh giá chất lượng của một thiết kế kiến trúc phải dựa vào
b. Dữ liệu và điều khiển của hệ thống
52.  Trong phương pháp phân tích kiến trúc, mô tả mẫu kiến trúc thường dùng khung nhìn
d. Tất cả các mục trên
53.  Khi một luồng tổng thể trong một đoạn của biểu đồ luồng dữ liệu có tính trình tự cao và theo sau những những đường thẳng sẽ thể hiện
d. Luồng biến đổi (transform)
54.  Khi luồng thông tin trong một đoạn của sơ đồ luồng dữ liệu thể hiện bằng một
mục đơn mà bẩy một luồng dữ liệu khác theo một trong nhiều đường sẽ thể hiện
c. Luồng giao dịch (transaction)












Contact Form

Name

Email *

Message *