G II THI U CHUN V FRAMEWORK
1.2. Ph ng pháp phát trin framework
1.2.5.2. Các k im th dành riêng cho framework
ây không có s khác nhau th c s gi a vi c ki m th các n v c a m t framework so v i vi c ki m th các h th ng ph n m m thông th ng. Tuy nhiên, ây v n có m t s m khác bi t ph thu c vào vi c s d ng các k thu t h ng i t ng và th c t là framework c phát tri n s d ng l i.
Có hai câu h i chính c n c tr l i b ng vi c ki m th m t framework. Câu h i u tiên là framework có th c s bao trùm mi n ng d ng c d nh hay không. Câu h i này c ki m th b ng cách ti p t c s d ng l i framework. N u framework này là không phù h p cho vi c phát tri n m t ng d ng thì nên cân nh c gi a vi c framework này nên c thi t k l i, ho c n u có th thì ph m vi c a mi n ng d ng nên c thay i. Các ng d ng hi n có có th c s d ng mô hình hóa các k ch b n c a các s ki n mà có th c s d ng trong giai n sau, ki m th kh n ng s d ng l i c a framework.
Câu h i th hai là li u framework này có áp ng y các ph n c a các yêu c u ng d ng hay không. Câu h i này c th m nh ch y u cùng v i các ho t
ng c a vi c ki m th h th ng.
Jacobson kh ng nh r ng, tính a hình là m t công c t t trong quá trình ki m th . N u các thay i c làm trong m t l p con, còn g i là l p ph c v thì ây s không c n ki m th l p khách (framework này). Nó s là hi u qu ki m th l p con, xác nh n r ng l p con này s áp ng thích h p v i các l i g i t framework.
Nh v y, n u các l p m i c th c thi t k c u hình framework thành m t ng d ng c th thì m i l p m i này ph i c ki m th n v , nh ng b n thân framework l i không ph i ki m th nh m t thành ph n riêng l n a. Tuy nhiên, framework này ph i c ki m th trong m t ki m th tích h p. ây là m t ki m th c a ng d ng hoàn ch nh xem các l p c th m i s t ng tác v i framework nh th nào.
N u t t c các l p c th c nh n t th vi n c a framework (các l p ã c s d ng tr c ây) thì có hai tr ng h p có th x y ra. Tr ng h p th nh t s k t h p c a các l p này và framework ã c s d ng và ki m th tr c ây, và nó s là không c n thi t ki m th l i s k t h p này. Tr ng h p th hai x y ra khi các l p c th ã c s d ng tr c v i nhau cùng v i framework này, nh ng l i không ph i trong s k t h p này. Trong t ng h p này, không yêu c u các ki m th riêng cho m i l p c th , tuy nhiên, c n có m t ki m th cho ng d ng hoàn ch nh.
Trong th c t , không c n thi t ph i có m t ki m th n v cho m t framework c s d ng l i. M t framework c phát tri n y v i t t c các l p c th c n thi t có trong th vi n c a framework s gi m b t r t nhi u các n l c c a vi c ki m th c a m t ng d ng c th c xây d ng t framework này.