ầ ầ Phân tích yêu c u ph n  ặ ả ệ ố  h  th ng m m và đ c t

BM CNPM – Khoa CNTT –  HVKTQS 10/2012

Gi

i thi u chung

ườ ử ụ

i s  d ng

yêu c u

ầ ầ ề

 Yêu c u ph n m m ầ  Yêu c u ch c năng ủ ầ  Yêu c u c a ng ệ ố ầ  Yêu c u h  th ng ệ ặ ả  Đ c t  giao di n ầ ệ ề  Tài li u yêu c u ph n m m ầ ị  Qui trình xác đ nh yêu c u ứ  Nghiên c u tính kh  thi  Phân tích yêu c u ầ  đ c t ứ ầ  Ki m ch ng yêu c u ng pháp mô hình hóa

ặ ả ể  Các ph  DFD  ER  OO

ươ

Yêu c u ph n m m

ệ ố

ườ ử ụ

ể ệ

ầ  Khái ni m: Yêu c u h  th ng là các mô  ệ ấ ượ ụ ả ị   d ch  v   mà  đ t c  cung  c p  b i  h   ộ ố th ng  và  các  ràng  bu c  khi  v n  hành  (operational constraints).  Th   hi n  nhu  c u  c a  ng

i  s   d ng

ố ớ ệ ố đ i v i h  th ng

Phân lo iạ

Các nhân t

liên quan

ệ ố

Yêu c u h  th ng

ầ  Yêu c u ch c năng ứ ầ  Yêu c u phi ch c năng  ề ứ ầ  Yêu c u mi n  ng d ng (Domain  requirements).

Yêu c u ch c năng

ẽ ụ ủ

ầ  h  th ng s  làm gì.  ệ  các ch c năng ho c các d ch v  c a h

t.

ế th ng m t cách chi ti ầ

 Đ c đi m c a yêu c u ch c năng:

ả ệ ố ứ  Yêu c u ch c năng mô t ị ặ  Mô t ố ặ  Tính m p m , không rõ ràng c a các yêu c u:  ẩ

ị c xác đ nh c n

ủ ượ ả X y ra khi các yêu c u không đ th n. ậ

 Tính hoàn thi n và nh t quán (complete and  t và

ấ ứ ấ ả t c  các mô t ộ

chi ti ữ

ượ

ế c gi a các yêu

consistent): Ch a t không có s  xung đ t, đ i ng c u. ầ

Ví dụ

Yêu c u phi ch c năng

 Yêu c u này không đ  c p tr c ti p t ị

ầ ề ậ ự

ườ

ệ i các ch c năng c  th  c a h   ậ ng đ nh nghĩa các thu c tính nh : đ  tin c y, th i gian đáp  ư ế ớ ộ ệ ố ứ ư ộ ả ủ ủ ộ ụ ể ủ ố ờ ng …và các ràng bu c c a h  th ng nh : kh  năng c a thi ế ị t b

 Các yêu c u này có th  là h n ch  h n nh ng yêu c u ch c năng.  ả

ế ơ ứ ạ

ữ ệ ố ử ụ ầ ẽ ế c tho  mãn thì h  th ng s  không s  d ng

th ng, th ứ vào/ra, giao di n …ệ ể ầ ượ Nh ng n u nó không đ đ ư c.ượ

 Các yêu c u này xu t hi n là do yêu c u c a ng

ầ ệ ườ ử ụ i s  d ng, ràng

ộ ệ ố ử ụ ủ  ch c s  d ng h  th ng….

ả  Các yêu c u v  s n ph m xác đ nh  ng x  c a s n ph m nh : hi u năng, kh

ẩ ậ

ư ẩ

ị năng s  d ng, đ  tin c y, không gian, linh đ ng … c a s n ph m

ầ ử ụ ầ

ả ữ

ề ả ộ ề ổ  Các yêu c u v  t

nh ng chính sách và quy

ề ạ ứ

ch c: các yêu c u này đ ứ

ầ ử ụ

ặ ổ

ư

ch c s  d ng h  th ng nh : chuy n giao, cài đ t

ủ ợ

ắ t c c a khách hàng ho c t và h p chu n

ệ ố

ư

ẩ ầ

 Các yêu c u ngoài: đ

c xác đ nh t

ượ ắ

ươ

các tác nhân ngoài c a h  th ng nh :  ư

ừ ng thích, h p quy t c, lu t, riêng t

t

và an toàn.

ầ ấ ứ ủ ổ bu c v  ngân sách, các chính sách c a t ư ầ  Phân lo i các yêu c u phi ch c năng nh  sau: ử ủ ả ủ ộ ượ ấ ừ c l y t ệ ố

ầ Phân lo i yêu c u phi ch c năng

ườ

Đo l

ng yêu c u phi ch c năng

ề ứ

Yêu c u mi n  ng d ng

ượ

ề ứ

 Đ c xác đ nh t

mi n  ng d ng c a h  th ng và ph n

ị ộ

ụ ộ

ệ ố ề ứ

ế

ủ ủ ặ ể ệ ố c tho  mãn ­> có th  h  th ng s  không

ượ c. ề

ề ứ ượ

ể ể

ụ c bi u di n

ả ánh các thu c tính và ràng bu c c a mi n  ng d ng.  ứ  Nó có th  là yêu c u ch c năng ho c phi ch c năng.  N u không đ ượ ệ làm vi c đ ộ ố ấ ả  Kh  năng có th  hi u đ ướ

ữ ủ

d

ầ i ngôn ng  c a lĩnh v c  ng d ng. ủ

ế ề

ư

 Các chuyên gia hi u bi

ề ứ

ế ầ  M t s  v n đ  liên quan đ n yêu c u mi n  ng d ng: ễ ượ c: các yêu c u đ ụ ự ứ ự t v  lĩnh v c c a h  nh ng không  ộ ụ c yêu c u mi n  ng d ng m t cách rõ ràng,

ượ ỹ

ị xác đ nh đ mang tính k  thu t.

ậ ặ ả

ệ ầ  yêu c u h

ỹ Các k  thu t đ c t th ng ố

ữ ự

nhiên th

ng đ

c s  d ng đ  vi

t đ c t

yêu

ườ ử ụ

ể ế ặ ả i s  d ng. Tuy nhiên

ượ ườ  Ngôn ng  t ệ ố ầ ư ộ ố ấ ặ ng g p m t s  v n đ  sau:

ử ụ ầ ủ c u h  th ng cũng nh  yêu c u c a ng ề ườ th ữ ự  Không rõ ràng: Ngôn ng  t ấ

ả ấ ậ ờ ể  nhiên có b n ch t là m p m  nên đ

ầ c yêu c u trên là r t khó khăn. đ t đ

 Quá m m d o (overflexible): có nhi u cách khác nhau đ  đ c t

ể ặ ả ẻ ề 1

 Thi u kh  năng mô­đun hoá (hard to modularise): c u trúc c a

ủ ạ ượ ề ề ấ v n đ . ế

ặ ả ằ

ữ ự

ườ

 Vì nh ng lý do này mà đ c t

b ng ngôn ng  t

nhiên th

ng

ươ ớ ấ ứ ầ ấ ủ nhiên không t ng x ng v i c u trúc c a các yêu c u

yêu c u.

ả ữ ự ngôn ng  t ệ ố h  th ng. ữ gây khó hi u. ể  Do ngôn ng  t

ữ ướ

ể ử ế ữ ạ  nhiên có nh ng h n ch , nên ta có th  s   ể ặ ả ươ ng pháp sau đ  đ c t ấ  b ng ngôn ng  h ng c u trúc   d a bi u m u (Form­based)  ồ

ữ ự ụ ộ ố d ng m t s  ph ặ ả ằ  Đ c t ể ặ ả ự  Đ c t ự ể  Bi u đ  trình t

ậ ặ ả

ệ ầ  yêu c u h

Các k  thu t đ c t th ngố

b ng ngôn ng  h

 Đ c t 

i vi

ượ

ữ ướ ị

ẽ ng c u trúc s  yêu c u ng ấ ả

t đ c t ượ

ế

c vi

tuân theo  t theo

ữ ượ

ướ ử ụ

c. T t c  các yêu c u đ u đ ể ị ạ ứ c m c đ  di n t ụ

ạ ượ ấ ạ ị ạ

ộ ồ

ặ ả

ườ ế ặ ả ề ế c s  d ng có th  b  h n ch . ộ ễ ả i b  l m d ng trong các đ c t

ấ ủ  cao nh t c a ngôn  .

ặ ả ằ ữ ướ ng c u trúc  ử ụ ấ ­ S  d ng ngôn ng  h ữ c đ nh nghĩa tr nh ng m u đ ẩ ậ chu n và các thu t ng  đ Ư ể ươ ủ ­  u đi m c a ph ng pháp này là đ t đ ữ ự ứ ư  nhiên nh ng m c đ  đ ng nh t l ng  t ặ ả ự  Đ c t  d a vào bi u m u 

ể ứ

ả ầ

ơ  đ u vào và n i xu t phát c a

ướ

ế

ề t, các đi u ki n tr

c và sau (n u thích h p),

ơ ả ầ  đ u ra và n i nó s  đ n.  ể ầ ữ ứ ưở

ự ủ ự ự ể

ể ể

ự ệ

ườ ử ụ

ươ

ễ  bi u di n trình t

các s  ki n x y ra khi ng

i s  d ng t

ng

ừ ầ

ế

ẽ ấ

ế

ượ

ứ ự ủ

đ u đ n cu i thì ta s  th y đ

c th  t

c a các

ồ ự

ị ặ ­ Đ nh nghĩa các ch c năng ho c th c th , mô t ẽ ế nó, mô t ế ỉ ­ Ch  rõ nh ng th c th  c n thi ả các  nh h ng c a ch c năng. ồ  Bi u đ  trình t ồ ­ Bi u đ  trình t  ớ ệ ố tác v i h  th ng. ể ­ N u ta đ c bi u đ  này t ệ ượ c th c hi n. hành đ ng đ

ụ ể Ví d  Bi u  ự đ  trình t

ầ Tài li u yêu c u ph n m m

ặ ữ

ứ ể

ệ ầ  là  nh ng  yêu  c u  chính   Tài  li u  đ c  t   yêu  c u ả ầ ề th c  v   nh ng  gì  c n  ph i  th c  hi n  b i  đ i  phát  ệ ố tri n h  th ng.

 Tài li u này nên bao g m c  các đ nh nghĩa v  yêu

ườ

ệ ố ế ế ệ ố

ị ầ  Tài li u này không ph i là tài li u thi

ả ề ặ ả  y/c u h  th ng. i s/d ng và đ c t ệ ả t k  h  th ng.  ứ t  l p  nh ng  gì  h   th ng  ph i  làm,  ch

ệ ư ế

ệ ủ ầ c u c a ng ệ ế ậ Nó  ch   thi ả không ph i mô t

ả  rõ làm nh  th  nào. ủ

 C u trúc chung c a tài li u yêu c u ph n m m

ầ ư

ầ ấ

ẩ +Chu n IEEE/ANSI 830­1998 đ a ra c u trúc g m 5  m c chính

C u trúc 5 n i dung

 Gi

ủ ả

ế ắ t t t

khóa, vi

t C u trúc tài li u

 Mô t

i s  d ng

i thi u ụ ạ

ộ ế t và s  ph  thu c ầ

ự ụ ể

ả  thi  Các yêu c u c  th  Ph  l cụ ụ ỉ ụ  Ch  m c

ớ ệ  M c đích c a tài li u yêu c u  Ph m vi s n ph m  Đ nh nghĩa, t ệ  Tài li u tham kh o ấ  Nêu tóm t ả ổ  t ng quan ụ  M c đích  SP ứ  Ch c năng SP ườ ử ụ  Đ c tính ng ộ  Các ràng bu c chung  Gi

ườ ử ụ

Nh ng ng

i s  d ng tài li u

Suy nghĩ

Qui trình xác đ nh yêu c u

ư

ị  M c tiêu c a quy trình xác đ nh yêu c u là đ a ra các tài li u

ủ ủ yêu c u c a h  th ng.

ề ứ

ệ ố ế

 Quy trình này bi n đ i ph  thu c vào mi n  ng d ng, con

ườ

ng

i và t

ự  ch c xây d ng yêu c u.

ạ ộ

ộ ố

ứ ữ

ầ ẫ

 Tuy nhiên, nh ng quy trình này v n có chung m t s  ho t đ ng

sau:   Phát hi n yêu c u, phân tích yêu c u, đánh giá yêu c u và qu n lý

ự ế

ầ ầ ả ầ

ầ ệ ố

ả , các yêu c u luôn luôn thay đ i, th m chí ngay c   ự khi đang xây d ng h  th ng.

ườ

ử ụ

ắ ố ng s  d ng mô hình xo n  c đ  xác đ nh các yêu c u.  ị

ầ  Th ặ ệ  Mô hình này cho phép vi c xác đ nh yêu c u và cài đ t h

th ng đ

c th c hi n cùng lúc.

ố ế

ượ ả ủ

ệ ạ ộ

 K t qu  c a ho t đ ng này là các tài li u yêu c u ph n m m

ệ yêu c u. ầ  Trong th c t

Qui trình xác đ nh yêu c u

 G m có 4 giai đo n chính

ồ ả  Nghiên c u kh  thi (Feasibility study)  Phát hi n và phân tích yêu c u

ặ ả

(Requirements elicitation and analysis)  yêu c u (Requirement

 Đ c t

ầ Specification)

 Th m đ nh yêu c u (Requirement

Validation) ả  Qu n lý yêu c u?

Qui trình xác đ nh yêu c u

Quy trình xác đ nh yêu c u (cách nhìn khác)

ả ứ 1. Nghiên c u kh  thi  (Feasibility study)

ệ ố ủ

ớ i

 Li u h  th ng đóng góp vào m c tiêu  ơ ể ể ệ ệ ạ ị ệ ố

ệ ố ụ ạ ự

chung c a toàn c  quan? ử ượ c s    H  th ng có th  tri n khai đ ộ ớ d ng công ngh  hi n t i, v i m t gi h n v  chi phí và l ch trình? ủ  S  tích h p c a h  th ng?

ả ứ 1. Nghiên c u kh  thi  (Feasibility study)

ư ươ ứ ậ

ng án phát tri n và lu n ch ng s  kh  thi ệ ế ị ư ứ ệ ẽ ể  C n đ a ra ph  Th c hi n công vi c này s  quy t đ nh đ a ra 1 h  th ng đáp  ng

ủ ả ự ệ ố ấ c yêu c u c a khách hàng ­>có tính kh  thi cao nh t đ

ầ ự ượ ệ ầ ệ ệ ả ẻ

ự ế ị ươ

ể ấ ượ ớ ượ ậ ng án đó không ể ả  Vi c th c hi n công vi c này ph i nhanh và r ế ụ  Quy t đ nh có ti p t c phát tri n theo ph ả ự  Ch  khi d  án kh  thi đ c ch p nh n, quá trình tri n khai m i đ c

ỉ ắ ầ b t đ u

 Nên phân lo i ph

ạ ươ ươ ấ ươ ng án: ph ng án th p, ph ng án trung bình,

ươ ph ng án cao

ả ậ ng t p trung vào các m t:

ứ ạ

ạ ộ ườ ụ ể ạ ng c  th

ề ề ỹ ề ề ề ờ ả ả ả ả ả ặ ườ  Phân tích kh  thi th ố ả ợ ế i ích cu i : chi phí và hi u qu , l +Kh  thi v  kinh t ậ ỹ ủ ả ậ +Kh  thi v  k  thu t: kh  năng đáp  ng c a k  thu t  ạ ừ ự +Kh  thi v  pháp lý: lo i tr  s  vi ph m, xâm ph m ậ +Kh  thi v  ho t đ ng: v n hành trong môi tr ờ +Kh  thi v  th i gian: th i gian hoàn thành

ướ ủ

c c a Phát hi n

2. Các b và phân tích yêu c uầ

 Là b

ề ứ ả ầ ướ ề i s  d ng  v  mi n  ng

ượ

ế

c vi

ọ t sao cho m i

ng

ườ ử ụ ầ ị

 Ph i chú ý c  nh ng đ i t

ệ ố ư ỹ ế ng khác nhau liên quan đ n h  th ng nh  các k

ượ c ố ượ ụ ệ i qu n lý nghi p v , chuyên gia ể ả ệ

ủ c kh o sát yêu c u c a khách hàng và ng ệ ụ d ng ­> Phân tích thành t/li u xác đ nh các yêu c u.  ệ ủ ượ ả ả  Tài li u ph i ph n ánh đ c mong mu n c a khách hàng, đ ườ ề i đ u hi u đ ả ữ ả ả ư s , ng

 Giai đo n này bao g m c  vi c phát tri n th  nghi m 1 hay nhi u mô hình

ườ ạ ệ ồ ề

ệ ệ ố ả ẫ ử ệ ố ể ượ ự ệ c th c hi n

 Quá trình này th

ế

ừ ệ ố

t th c s  c n gì t

ườ

ự ầ ầ

h  th ng,  ố

h  th ng khác nhau. Vi c làm b n m u h  th ng có th  đ trong giai đo n này ườ ặ

i có các yêu c u khác và gi ng

ườ  Ng ườ th nhau

ưở

ả  chính tr  do hoàn c nh c  th  c a các t

ứ  ch c

ở ế ố ng b i y u t ộ

ế

ườ

ng kinh doanh bi n đ ng, th

ị ụ ể ủ ự ng xu t hi n các yêu c u m i mà không d

ể ị ả  Có th  b   nh h ườ  Môi tr cướ báo tr

ộ ố

ể ị

ượ

c

 M t s  yêu c u không th  đ nh nghĩa đ ế

ng g p khó khăn vì: i SD (ho c liên quan – st keholders) không bi ng trình bày theo cách riêng, có nhi u ng

ướ c, không có công th c tr ụ

ệ ự ứ ế ằ ể c b t đ u b ng vi c tìm hi u lĩnh v c  ng d ng và k t

ầ ượ  Ti n trình này đ ẩ ằ thúc b ng vi c th m đ nh yêu c u

ắ ầ ị ệ ầ

ướ

ế

c ti n hành phát

2. Các b hi n và phân tích yêu c u

ề ứ

ụ  Tìm hi u mi n  ng d ng ậ ầ  Thu th p các yêu c u ầ ạ  Phân lo i các yêu c u ế  Gi

ộ i quy t xung đ t ắ ư  S p  u tiên  Ki m tra yêu c u

Phát hi n và phân tích yêu c u

ặ ả

yêu c u  3. Đ c t (Requirement Specification)

ế

chính xác và chi ti

ệ t yêu c u c a h

 Mô t ố

ệ ố

th ng đ  làm c  s  cho giao kèo gi a khách  hàng và ng

ơ ở i pt h  th ng ữ

ườ ả ử ụ

ụ ặ

ng ph i s  d ng nh ng công c  đ c

ườ  Th tệ bi ệ ậ

ệ ớ

ượ ng đ ế ế ở ứ

ế

ườ t k

ế  m c cao (thi

c ti n hành  t

 Vi c l p tài li u này th song song v i các thi ế ơ ộ k  s  b )

ế

t tài li u này, các sai sót trong xác

 Khi vi ị

ẽ ượ

đ nh yêu c u s  đ

c phát hi n và s a ch a

ị 4. Th m đ nh yêu c u  (Requirement validation)

ặ ả

 Là vi c xem xét các đ c t

ặ ượ

ể ự ệ

mô  t h  th ng có th  th c hi n đ ầ i r t nhi u công vi c làm l

ử ụ

ầ ệ  yêu c u có  ả   chính  xác  nh ng  gì  đ t  ra  trong  ệ ệ ố c không? ể ẫ ỗ  Các l i trong tài li u yêu c u có th  d n  ệ ớ ấ i trong quá  t ể trình phát tri n cũng nh  trong quá trình  ư ượ ph n m m đ

ư c đ a vào s  d ng

ườ

Các l

i th

ng g p

 B  sót thông tin ấ  Không nh t quán ự ậ  Sai s  th t  Không rõ ràng

ị 4. Th m đ nh yêu c u  (Requirement validation)

ầ  Các thu c tính c n th m đ nh g m:

ượ

ộ  Tính đúng đ n, ắ ấ  Tính nh t quán,  ầ  Tính đ y đ ,  ự ệ  Tính hi n th c ể ể  Tính có th  ki m ch ng đ

c

ế

Th m đ nh yêu c u (chi ti

t)

ẩ 4. Th m đ nh yêu c u: Ph n  bi n ­ review

Ai tham gia ph n bi n?

 The  author  of  the  requirements  document,  someone  who  understands  the  needs  of  the  client,

 a person of the design team, and   the  person(s)  responsible  for  maintaining  the

requirements document.

 It  is  also  good  practice  to  include  some  people  not  directly  involved  with  product  development, like a software quality engineer.

ị ậ K  thu t xác đ nh phân tích  yêu c uầ

ướ

ng cách nhìn (viewpoint­

ế ậ Ti p c n đ nh h based) ậ

ườ

ữ  Ghi nh n nh ng cách nhìn khác nhau c a  i liên quan và s  d ng nó vào   ch c các

ử ụ nh ng ng ổ ệ ế ti n trình phát hi n yêu c u và t yêu c uầ

ể ượ

c xem xét

ớ ủ

 Các góc đ  khác nhau có th  đ ữ ệ i c a d  li u

ừ ừ ừ ự ế

ộ ồ  T  ngu n hay đích t  T  khung làm vi c  ị  T  s  ti p nh n d ch v

ị ậ K  thu t xác đ nh phân tích  yêu c uầ

ng

Xác đ nh yêu c u đ nh h

ướ ạ

ầ cách nhìn g m 4 giai đo n  ơ ả c  b n ị  Xác đ nh viewpoint  C u trúc viewpoint ệ  Làm tài li u viewpoint ạ ệ ố  Ánh x  h  th ng viewpoint

ế

ạ 4 giai đo n (chi ti

t)

ị ậ K  thu t xác đ nh phân tích  yêu c uầ

ậ ượ ỹ

ữ ệ

ử ụ ậ ế ế

ệ ố

ế

ượ

ể ướ ậ ế ng ti p c n ứ ướ ng ả

ụ ủ

ướ ị ng ch c năng (H ng c u trúc d a trên lu ng d  li u) ố ượ ướ ng đ i t ng vào mô t

nghi p v  c a h  th ng th c, k t qu  thu đ

c là MÔ HÌNH

ầ K  thu t phân tích yêu c u d a trên mô hình ầ Đ c s  d ng r ng rãi đ  phân tích yêu c u  K  thu t này đi theo 2 h ậ Ti p c n đ nh h ậ Ti p c n h ướ T p trung h Ụ NGHI P VỆ  Mô hình nghi p v  theo ph

ườ

ủ ng c a nó

ệ  Mô hình ng  c nh: Mô t 

ụ ữ ả ấ

ệ ố

ươ ả ệ ố  h  th ng đ ứ Các mô hình c u trúc ch c năng mô t

c xét trong môi tr  c u trúc ch c năng c a h  th ng

ng pháp này g m: ượ ả ấ ứ

ả ả

ữ ệ

ấ ả

ồ ơ

 Mô t  Mô t

ế ướ ng d  li u: Theo h

t c  các h  s  và b n m u, theo

ấ ự i th c

ứ ấ ế t các ch c năng: cho đ n m c th p nh t ố ượ ng c u trúc là bao g m t ế ớ HĐT g m các ĐT và khái ni m c a th  gi ứ

ệ ữ ệ

ế ủ

ỉ ầ

ế ớ

ế

ướ

chi ti  các đ i t ồ ủ  các m i liên k t c a d  li u và ch c năng – ch  c n thi

t v i cách ti p c n h

ấ ng c u trúc

 Mô t 

ả ừ ể T  đi n gi

ố i thích

ả K  thu t phân tích hình th c hoá 

ử ụ

ự ễ

ả ủ

ế

ặ ả ủ

ệ ố

D a trên vi c s  d ng các khái ni m, ký pháp và mô hình toán h c đ  phân tích và bi u  di n HT  Phân tích s  không tách thành mô hình riêng. K t qu  c a vi c phân tích và mô hình hóa  cho ta ngay đ c t

c a h  th ng.

ị ậ K  thu t xác đ nh phân tích  yêu c uầ

ủ ủ

 Vai trò c a ph ng v n (Interviews)?  Vai trò c a k ch b n (scenarios)?

Qu n lý yêu c u

 Đ i v i các h  th ng ph n m m l n:

ớ ầ ệ ố ng khó xác đ nh hoàn

 Đây là quá trình tìm hi u và ki m soát

ố ớ ườ ầ yêu c u th ổ ch nh hay hay thay đ i ể ầ

ổ ủ các thay đ i c a yêu c u.

ả Quy trình Qu n lý yêu c u

ế

L p k  ho ch qu n lý yêu c u

ề ầ

ấ ươ

ế  Các v n đ  c n ph i có k  ho ch: ầ ỉ ng pháp Ch  ra yêu c u

ệ ữ

 Ph ổ ả  Qui trình qu n lý thay đ i ề ố  Các chính sách v  m i quan h  gi a các

yêu c uầ

 Các công c  CASE

ươ

ỗ ợ

ng pháp h  tr  phân

Các ph tích

ươ

 Các  mô  hình  h   th ng:  Ph

ệ ầ

ố ả

ữ ệ

ố ng  pháp  ộ ệ bi u  di n  yêu  c u  h   th ng  m t  cách  có k  thu t (thay vì văn b n d ng text)  Use Cases ơ ồ ồ  S  đ  lu ng d  li u  …

Use Cases (UC)

ộ ệ ố  UC ch  ra ch c năng c a m t h  th ng  ệ ố ủ  hành vi c a h  th ng  ườ ử ụ i s  d ng và

ả ng tác gi a ng

ử ụ

b ng cách mô t ụ ươ (ví d  t ệ ố h  th ng).   UC có th  đ

ể ượ ủ

ả c s  d ng đ  mô t ầ ệ ố hành vi c a h  th ng ph n m m.

ơ ả

UC: các khái ni m c  b n

ạ ượ

đ t đ

ể ậ ự ụ  Actor:  Nhân  v t  s   d ng  h   th ng  đ   c m t m c đích nào đó. ở  Primary actor là nhân v t chính mà kh i

ộ ạ t o m t UC.

 Ho t  c nh  (Scenario):  T p  h p  các

ạ ượ

ả ộ

hành đ ngnh m đ t đ

c m c đích

Ví d  UC 1: Bán đ u giá (bán)

 UC1: Put an item for auction  Primary Actor: Seller  Precondition: Seller has logged in  Main Success Scenario:  1. Seller posts an item (its category, description, picture, etc.)

for auction

 2. System shows past prices of similar items to seller  3. Seller specifies the starting bid price and a date when auction

will close

 4. System accepts the item and posts it  Exception Scenarios:  a) There are no past items of this category  • System tells the seller this situation

ụ Ví d  UC 2: Bán đ u giá  (mua)

 UC2: Make a bid  Primary Actor: Buyer  Precondition: The buyer has logged in  Main Success Scenario: 

1. Buyer searches or browses and selects some item 2. System shows the rating of the seller, the starting bid, the current bids, and the highest bid; asks buyer to make a bid 3. Buyer specifies a bid price 4. System accepts the bid; Blocks funds in bidders account 5. System updates the max bid price, informs other users, and updates the records for the item  Exception Scenarios: 

– 3 a) The bid price is lower than the current highest • System informs the bidder and asks to rebid – 4 a) The bidder does not have enough funds in his account • System cancels the bid, asks the user to get more funds

ệ ố

Ví d  UC 3: Bán đ u giá (h  th ng)

 UC3: Complete auction of an item  Primary Actor: Auction System  Precondition: The last date for bidding has been reached  Main Success Scenario:  1. Select highest bidder; send email to selected bidder and

seller informing final

 bid price; send email to other bidders also  2. Debit bidder’s account and credit seller’s  3. Unblock all other bidders funds  4. Transfer from seller’s acct. commission amt. to organization’s

acct.

 5. Remove item from the site; update records  Exception Scenarios: None

ư ệ

UC Diagram: Th  vi n

ơ ồ ầ ự ủ

S  đ  tu n t

c a UC

Data Flow Diagram ­ DFD

ổ ế ệ ể

ữ ệ

ệ ố

ư

ệ ố ầ

ữ ệ

 DFD ph  bi n trong phân tích bài toán. ộ  DFD  th   hi n  dòng  d   li u  trong  m t  ộ h  th ng. DFD coi h  th ng nh  là m t  ữ ể hàm  chuy n  d   li u  đ u  vào  thành  d   ầ ệ li u đ u ra.

ữ ệ

ự  DFD  bi u  di n  s   di  chuy n  d   li u  ử

ế

ể ữ ệ gi a các ti n trình x  lý d  li u

ệ ố

Ví d : H  th ng ch m công

DFD: Kí hi uệ

ế

ườ

ườ

ng cong có mũi tên ồ

ụ ữ ệ

ồ ơ

ẳ ng th ng có

 Ti n trình : Đ ng tròn ữ ệ  Dòng d  li u là đ ậ ữ  Hình ch  nh t là ngu n sinh hay tiêu th  d  li u employee record, company record, and   H  s  ngoài  ư ộ ườ ượ tax rates đ c bi u di n nh  m t đ gán nhãn ­ labeled straight line.  ề

ữ ệ

ượ

ế

t nhi u dòng d  li u đ

c bi u d n b i

ể ả

ế

t.

ề ườ

ự ầ ở  S  c n thi ữ ặ “*” đ t gi a hai dòng (AND). Nghĩa là c  hai dòng  ầ đ u c n thi ng t

, kí hi u “+”  dùng hco phép toán OR.

 T

Các mô hình khác

ữ ệ

ố ượ

ữ ệ

 Mô hình ER cho phân tích d  li u  Mô hình đ i t

ng cho phân tích d  li u

Bài t pậ

 L p các Use Cases cho h  th ng qu n

ộ ườ

ạ ọ

lý sinh viên c a m t tr

ệ ố ng đ i h c

Tài li u tham kh o

ề ườ

ậ ị

 R. Pressman, K  ngh  ph n m m. T p 1, 2, 3. NXB  i  d ch:  Ngô  Trung

ỹ Giáo  d c,  Hà  N i,  1997  (Ng Vi

t).ệ

 R.  Pressman,  Software  Engineering:  A  Practioner’s  Approach.  5th  Ed.,  McGraw­Hill,  2001.  Chapters  11,  12.

 I.  Sommerville,  Software  Engineering.  5th  Ed.,

Addison­Wesley, 1995. Chapters 5, 6, 7, 8, 9.

 Wendy  Boggs,  Michael  Boggs.  Mastering  UML  with  Rational Rose 2002. Copyright © 2002 SYBEX Inc.

ế

t  k   và  L p  trình

ế  Đoàn  Văn  Ban.  Phân  tích,  Thi ố

ố ượ

ướ

H ng đ i t

ng ­ 1997 Nxb Th ng kê Vi

ậ t nam.