System Development Method (DSDM) Promoting .

advertisement
"
,...
...1
~
Journal ofComputedkience & Its Applicatio:s. 2005, Vol. 11 NO~ij .., ' ,
Promoting Quality Assurance in Software Products Through the Dynamic
System Development Method (DSDM)
".'.
.
'.'
~ ,',l'P'"
,
P ':".j-q" on!!::;}""
,...,
.;,-..
h . 1{(i~d"il"T '1:')'0' .., . :'..
. '.'. !' ..;,e,,' "
"" .;
'3'
"'O.M. Bamigbola
"''',-.,';
':'.t,
,',
,-::,."""...,...
Email: ombamigbola@hotmail.comn !,
.
,
,,","
And
J.O. Daramola,
.
.
'"
'
.
.
..
.
Email: wandi_ex@yahoo.com
Department of Mathematics/Computer Science, lJnj\~:Jty of Dorin, Dorin. Nigeria
.Corresponding Author
.
,. ..
, .- I .. ;-'..)' ,.. ", ,
ABSTRACf
Historit;aIly, s;JjiJi,iue deV~l~p~~id ;m/lilW~ys b~;"'Q'i:r~tit challenge; The'
need to optimize the cost, tUne ,and,accll!1te.realizatiQ~.JOfsoftware requiremeIJts
to satisfy the grow,ing ~ophistication plL:er tkm.a.nds hiI;sled to the emergence of
"
'.'
','
.',Jr;!.: ),"1"; 'I
I'~"":-,,,
.f,'';''-,:,.,; r',
'
,. ,-,
'
.
the Dynamic System Development Met::Jd (DSDM). The DSDM approach em
ploys the concepjolliel+itii?i!'p~;)tJiy~i~ 1~},(rRapiii1ppticatio;, DeVelopment~
(RAD) to achieve early visibility.:andqu~:'c'con1!ergencel0 usable software modeb;/or small and In~f!i~~;~~~f, ~~~~r- }t :~{fo e~IJ~ol~~the concept of Joint
Application Development -~ (JAD). Thi. !ssential attribute makes it a veritable
"
'.., .,,c.:, '. . '
,. ,;
,
i"..""
,
tool for boosting the quality aSsurance ,"-etncs' of softWare products because of
the increased user participation in the £..:'elopment process.
'
We hereby review the different, s~age If the DSDM and its. suitability for im
,
'
'
'.'
n',,",',
"
;..:.
proving the qualitY of software products ve also report a case study of the appli
cation of the DSDM approach' as emplo.,'d by a Nigenah University in developing
a software application for theregistr::ion and processing of students exami
nation
process.results. The pap~r closes with sor.~ of the inher~nt benefits of the DSDM
; . ..: j.:',.,
-- "i
')
approach and recommendations
software development
. for all s:.keholders in the
.'.
'
1. Introduction
The
Dynamic
Sys'teh\sBd\le1opmer.
(DSDM) is a project deliveryffamework thz jds
Aethod
the
.-
:~".
!
",," "
.'
.
m~od as an improvement over rapid application
d~;;",~
v~9pment(RAD)
method
is
gaining
and popularity
in the software development
increasing
relevance
time-scales
and fixed
a public dorr..:..., Rapid :0
development
and budgets.
deliveryIriso[biIsiries~s6Iutio=--
industry. This approach has proved suitable
tight
Application Development method (RAD), Y '.:ch has
especially
the the business domain, simple,
applicationwhen
lies within
",.
.
been developed by capturing the experience = 1 large
requirement specific and can be modularized, The
consortium of vendors and user organization. 13]
DSDM
approach offers time and cost advantages over the use
,
"
"
This concept of dynamic systems de,,:- pment
o[traditional approaches like the waterfall and spiral
models,
"
,
82 Promoting Quality AssU'ance in Software Products Ihrot9tthe-Dyrw:nic,: ;,',', "": ",; " '" ,Pq(!/ "I~ '::o' " 9.M,:;~a?iigbola ,& J.O. Daramola
System DevelopmE\nt Method (DSDM)
,
"
"
"
,,',
,
,; "'"
)'~.,--,~,~ "', Li'''''' ","""
-,"
-
..-' Also, the
DSDM embraces the' cOncept ofJomt'. ; :temDevelopmerifMethod(DSDM) surely boosts the
"""-": ~~""''P;'1,..;" "':, .. "
(,. . "I";)£':"
,"""
, , f}Oft . ."
, } u",
. ! ,'- ,; . ',-,
,
,
Application Development, which encourages a larger probability of meeting user requirements
within the
",.r< "" , "t':..'"...\I'
..
stipulated project delivery schedule.:.."
.." , '.'.
level of participation ofstalceholders in the software
However, the DSbt{nnteriBrings about quick
oevelopment process. This is done by bringing people
who have the right knowledge together through delivery of usable systems with some
,,' .".,
wor~
compromises.
shops and seminars to achieve consensus about the set : These compromises could be in the area of not fully
of system
requirements
ftom time to':' --meetingthe-systeItlTequirementin
order8.0.,(0
to meet
the s.etcan
time
during
the periodand
fo.rexpectations
dev.elopment.,~h~p~~~Mf.
Rm~i~~qr,<R\~,tqf..~~HY~fY.4.lJ~~~7.
~olution
,
I
,
,,
,-
employs a team of personnel usually betweetr6:-8\per.., ; .\,be.produced\in.20 % '()fthe time that would have been
,,
sons made-up of programmers, designe~s ~n.a'us~rs', 'l\~i~feq\i'trdl't6'i};.bdu~~.tmt!ai '~blut16~'~th the presump
,
",
;', '~',>.'.\) \>(:~t\\"\\~.,'h ~\",,::,
""
" ,",'
,', .-','
:~ho work together as a group ~n a sO~3f~.~~~~~~I>:\\\\, ,Rofh~)~fl~J~~~mep:~JVil! ,~e tp~t through a pro
m,e~t. project. The membership is earefully chosen to\' :;~cess-ofitemtive'refiriement [2].. ,The RAD concept is
ensure that the varied interests ftOIl1 the user~'afict d~" i>Jtlt ikprl~tfrd~ t~~; s6ftwck\e"e'Iigine~ruig concept of
velope~~ are adequately catered f?f, ~~, ~~~Y., C\f~~~~, fl .~te~~Rnl~W~P!8~,~WtJ1. ~~~~~ th~ ~sr- ,ofi~,erativ~
,
.
:,. ':.i-';';i\h',\1:,
'"..\fn\:)t,~.,
-.
.'.
-7,~1\'\' .(S\ h'. 1,
.
',;,,\,\,'
" ,'" "
,
- empowered-by the project management to takedecf"~ ',~imprdvenienttechniqu'esto'gravitatetowards the full
.
",', ,"
\,
,
r~iiatioA8f~'~ste~desig~ [12f
.' ,
sions.
.':'; :\, (.
,
.,~', ',: ,;\,~\~ "~',ir\t~ ;j(.h''-';l~ :~:rn~\"'-~,\ 'n\,"",'" L. "~'-,L.
A combined team of users and deve~9Prt;l~~k, ;:; .'. 1\ '1:.\ 1~4t\\w. Pp~, ~x~ th~:D,SpM and its suit
sures that testing of the software product is canied out ','0: '.abilityforihiproving
the,quality'Ofsoftware product's,
,i"""
'~\ .\\' ,~~,;. ,'c'I'"
,.',', \,
"'"..,,'
continuously
every
stage of
of the
the team
development'pioalsofor
'hereby-present'SPERU,a
software of
applica
cess,
with theatuser
member
being able to'Wetion
the registration and processing
students
, --.
".
.
'." :'.. \".,.; , :\ ,(' .",: .'.: .' ;", ' '.'
,
make necessary inputs from the user)s point of
view.
This definitely is at variance with the approach 'of
the
'\tat~ffall model where a separate stage is'desigriated
:,for testing, which is also done by the'developets [8].
,
ex
aminationresultS developed using the DSDM to under
,-
.,
.
,
,
'
s~fp.J~j~Sm1~t,s p;~~.p'SP!'4
~pp~oach.
,,:- !: !:" ;::"h ,h,) ,,'gr;ri;;
~;~'~~~~~~)f?J,l!~~J?'~RMij") ;,~ "',,. ,
"', i!
,.
, The privilege of the user being' a part of it all alorig"Bet
---'n
Thff-;;?~RM~:v.~~~?~~ryt ~~,o/~Je. ~ b~;~Ollped into
. onIy-ensures adequate and simultaneous testiri.g~me
" '.'
\
~~ B~",~~51 ~~:,~y)~i?m;tx;~y, Bu~~ess study,
ity assurance metrics like correctness, utility
software product during development but also
FWl,ctiomij ~Qd~lity'r(j.MQ~ $Y$~ep1 des~gn and build it
andreliability are adequately catered for. Thus, DyruUnic
""" ,poJ"...}",
,.,J_.,
,,"""".'
"
vitiilqual
.'
- ., Implem~ntation. ,
. eratioIl. ~d
'.. I'
Sys":
,"
1'. , 'o~'" j".
" .. -- ..
.
I
I
,
O.M~Bamlgbola & J.O. Darainola
PrOmotin9. Quality AsslnllCe in Software Products throUgh the Dynamic ~
quiremeqt for development. This could be done at
this
\:, ::',
2.1 Feasibi.ity Study, .'
~
System Development Method (DSDM)
,
In this phase, a thorough ~~~~$$~~n,trPt~~w;oj1~t, i~
l~vel and}n other phases when it is deemed
carried out to deter~ne, ~e s~it~9i~io/.?!~~~ gSI:)¥
ate. The application of the lAD concept sharply
appropri
approach. At this level,th~ite~~~fe~i~~~~~~q£~
con'~¥1~ ~~e usual practice of interviewing
project is ascertaineq'.1\l~o Pr~9r?~9HW1!tW ~v;enindividual
9f)be,~ organization.
At the end of the business
staff
study, to issyesJi~e ~9~t~~f)P~Q~J~~~, ~~h~~~.~;~::~q., ,,' -;!h~ ~~~-AreaDefiniti~n document is produced
co,~ theidentified,business processes and the
that build the system, .orw~~t4~rt9.~J.W9j;~~~ ~~J}Jp.~
classes
:, ':."
"
,
','
,
'
doin~. Tl!is,isiQe~w~~.n<~t ~;p,rB~Rf~~~~rW;1!~\~.,t9 ,. W'M~er~ that will be affected by the introductioI1 of the
"--"" -
the pSDM, for examp~yi!. ~jlfl,P.cf,n,9.[~~~<;IPi/~p.p.~ -p~ ~em. This documental so helps to quickly iden
,to business syste~Uh~~(Mr~1Pllt~WJ~OO~tff1~m~~ .~~f¥ ~~~ individual users ~ho will be members of
the applications. The fe~i~ffi1;Y, i~ W:'f.jl:Y,~!,: ~R~1'~~r~.~e PSPM development ~~am, so that approval could
be
System Architecture Definition is another document pro
.
,
.
carried out within~ew! Y.l.e,~¥..JAe. ~~~~?JHt;¥ ~e.port ,sougl1tfrqm management for their
participation, The
du~ed quring the business study phase, It describes the
..
p~oduced as output 9fthjs ,s~~~.sh.°~~ ~HPR ~Wngs
;development and target platforms as well as the archi
ther
convince
tl1e~~jr~,qp!.q?ffi$~...a~IM~~~e.,
A .t~ture of the software to be developed. It
in brief
details, that
An Outline
P!cpl ~()~ developwent is
,also
specifies the
. .'.
J, ,I, '" ..'. .,'.' ": ," '.
,,
produced,
to support
~~~ f~~j~Mi~.rep'~'l~J9,t~~
fast
prototype
could
a,lso be produced.afl:er the,(easi- hardware platform (Stand~alone, Network,
Distributed
.
..'..
.
~
...
'-.
"
r, ....................................... I.,~-,.~_.."'..'.~.
-.'
'
~'--------------------------- .
bility studywhe~~ ~M~ pg.s~ipl~ffiqi. ,:"i~;h ,:~ni:;~L :Y~i::-"-'i~~),andop~ratingsystem platforms (UNIX, Windows,
2.2 Busine~s ~t.p~y;; :f:f .iif::f1 >'-'j'}i) ;:~ii)f!J'nil;p::;':' -M~~.~~osh, Linus etc.). Also the choice nfs.oftwaI:e_After
the decis~onfo(9~PM,~,RJ~~4~'r~e:~~~ - ~si~ (functional, °Wect-Oriented) and So'ttware -
ness study provides the fo,\it\9atip~ fWO: ~ ~b,&~quent tools (DBMS, RAD tools, CASE tools etc,) that are to
"
,
...,,; ........... , ,,,.
"/" :.~" " --"
work to be done. This is also a s~q~
).",'
, . -'
,
ffi't~9~.fl&rl~~~ }?:~u~e:d are containe~. in this document. It also
this phase effort is made,Jo getgood WldeI$m<;l#1g of
high
,
,...:" ''''''''-'' (',",' ") ~!(h,." I:
',(,:.
Howe:ver, ,the architecture definition could
businessenough
process to
be a~~oma~~ the~ req1,J,ire
tothefacilitate
under~'ll.lmn~~~~~;~':W~~s~i~d
..~~hts the major product components and their inter
" '.
,~hange from time to time as the development work
' ':"
l.".-
'".' .,,', I)"., .
ments. A series ofJointAppliqttion QtWelqpmept work
progresses
and the DSDM development team gains
technical
constraints
for,~~~
,to
rpa4e.)n
faces.
" ,
"
~...pr9.gress
.. ,,' ,;
. --' ,be.
., ,>,
:.
"
"
,
.
. ,'.,
.. , ': ..I "J""
. .'
shops (lAD) c~)Ul~ ~~:Pr.W~~}?;.f9JPJ~~~1~~$~,Yrf5~~ .
"
a,better understanding of the business processes,
'..
,,~.3Functional
Model Iteration
and opinions of. v~olJsknoV{l~g~pJe st.a1f cip,d ~8ke:
..,
',,~ 0'
< J",
",""
.., ".,. J 1,..,-, .',
-- This phase is focused on refining the business .as~~
,- -- -
tq
401de~s,~0~s
g~:C?~~~1MWAMJe~p»R?MfiSrRt~t
.'
\
--~. '
--S,4 Promoting Quafity Assl.I'ance in Software Products through the Dynamic
Bamigbola& J.O. Daramola
System Development Methoa (DSDM) .
\
O.M~
ofthe system, which entails building onthe high level
b) FunctionalPrototyping Review Documents: This
functional and information requirements obtamed'dur- .
keeps tiie'comments 6fthe ~~er ~'; what was liked
sh~~id b~ retained and what was disliked and
and
should
ing the business study. The functional model
iteration
and the de,sign and build iteration are both cycles of be changed, as the users lterativelyreview the system. c)
four dominant activities, which are: to identifY what NorilFunctional Require~erit Docum'ent: which
be done, to agree on how to go~out it, to do it, and
reCordS-the non-funCtional requirements that are elic
IS to
to
'Itoo
a&mg the bUSIness :study and functional model it
check that the right thing is done. Checking that the right
-.
,
thing is done will entail reviewinz documents, deinon- (effitihh:!§ornilofili~t;vAirbe ~thdied during th~ func
.
stiating prototype and teStmgthesoftw3re components. iti~kilinnJaei1tetatidn'{jut'the;rrt'ajonty will be dealt
with
,"
In this phase, the analysis model and softwarenents
coinpo- - 'd~:fhBd~sigh~4;biiild Iteration phase. .
are built side by side. The software components
.-
-, "-~ --------------- '
:i4besi~' ~d: Bulld Itet~tion ..
contain the major functionality and also satisfY some
.'
to
cycle of four activities continues, the findings of
high:~fitnHiJd iffidiplacediri tb:~ hands of the user. The
activities are fed back into the analysis models and
prototyping
as
the models are refined, the prototypes progressively
. major'ptb'lfiict
is the test~d system. Testing is carried
oJ! ifu!61Ygh'out
gravitatps towards being the software that coUld be
tIiefu~ttional'model iteration and also
dUi-irig'tbe deSi~ and bWId'iteration phase. The tested
delivered
although not yet perfectly designed, in
easily
tified during developm'ent, bul: will satisfy all the
-~~rrt~ not'neceSsarily satisfy all requirements iden
c?re
other words.. a I11iniI1lum usabl~~bset of the
Tl1eSoftWare
.
TIlis-[~ vJhb~eth~sy~tem'issufficiently engineered
functional
requirements. During the phase, as the
non
col!lplete'sdftware.
.
Comi>one~'ofthe
requireinents(i.e.
the." minimum
usable subset), with
I
.
.
the
. '.
iteration are
.
.
'licFwm'j)f£ aad~ ir.l
~~sequent
defuieries.
tested as they are produced. This test in
cludes unit ~ting and many other classes testing: the 'i;siia~iidi~J{tation'
-ifha~th3f~e~'p3ttsofthewhole prad
fiuictior1a1 iriOCtei
.
" ;. ;; "
,,
. .'
, . ,',. - '
;~ij~(~hIV~ilie;.ttitov~rffoin the develop~ent
objective of testing in the functional modei iteration
..
phaSe
or not
the
~~'t6thebpeiati6~~w6nment.
is to ascertain con-ectness and to know whether
units
knit
together
. ..,
into
a
usable
This
includes
set ':~gth;~r~ anifhindll1g over the system to them.
offunctionality. The other products that emanate~ 'fiidtUJf:.iliiliti~earta :bthetneeesSary documentation
models
iteration
ITom
are: the'iurictlc)Iial
- titt'MsBf<ieii:Veted:'rhe proJe'ci Review Document
a) Prioritised FUnctions Document: This defiries 1he'66te
;;~~~wfui(th~'p)iojecr~ achieved in terms of ~iti'~~
functio'nalities that have a guarantee ofbeing <Sbj~s:It :S~ecifies.the core require-
dtli\r~&t
, ..
"
.,
fd~<'iH~ilihlQe~MW
ftitff,'the'ldw~rfunttiohallty that
r'.'
. .'. . ",
" "
,... ,.
to the user at the end of the cUrrent incremeriC' .;,,,j j
"--"-'--'-H'- .
..
.". .
. . Bamlgbol8~ &';a:O~D8r'aniola .
~i~ dua!i\Y:IASs1lBntIl WSOftwate '~s thrixJgh the Dynamic
/{
..
. ". h '~I;.' J ci ..", 'r';'~, ,:i. jjll!t:;~\i '\j'~' '".,
. , .' ,i. ',;, . ,:.,;, ,:, ~,,! 1:, -' 1.1.:,..)1 ~rll nuhl N ?2~:J
85
"sfsleni'Development Method (DSDM)
.'
L3'tIO'lr:i TH; C:'t~,'11 ~:,fiJ jf;',;;"'" ! '
cality of product failure. A failure is an unacceptable
have been left out for later considerationowingtothe
., ", 'rei
",/ i;~;;51 ~,r:: ')bi;~juo11£1~ '{d ~Id£ .
n"'-f'''' b
[ ;"C',[I,. :,. ...'
I fl cH
~ff~ 6~ij~~:Ub~:~nde~ p~~ible operating condi
Jp
,
, Also
" .'" .' ,', ,,' ~.:J
........................................
,
short time-scales.
to-:-",1,be
repo(ted~.. -J'~ majorbusi
ness func?onalio/.th~t ~a~i ffi~Y~~ 1~$..9evet6p
,"
;
,
",.'
:,(j i~;;:n6 (I'!:,\':':" :;,;:
, . ", "
"
tions, that occurs as a consequence ofafault. For ex-",. ,'.{
, "I~ '1')1 .Ih(: f:':,. : :
I:
"
ample the, product is tested to ascertain how often it
ment that had to ~e ~~mp'<;>~~~y)~j?J~~~~ )~:prder to
--J;',.(i:)~r~, oJ:;:" :
".'
d
"''
'"
,
fails i.e. mean time between failures, how bad the
effect
'. :,! '.~;;"
' ",
'".,
9£~t \aMUf~]~,~e wh~n it-fails) how long it takes on
~~ ~~r~gC;:,~o,repair it i.e., mean time to repair,
the
J,
',~'
eliver a~ the requir~d ~ate..ni"i!d!n1
?;')n ,j'>{
of, 'n;}', jl. ,IHJMoiuJi IJ :8;f!."
'.' :' ,
,
,,
"~,,
3.0 DSDM AND Software QualityiAssuiiince
,..
-,
--' .
,---::,,1,.-:'.-"
,".
:.
-:;c,
The quality of s9ftWafeiSit1i{n~JdMl~~~l1icfithe p[od
\' I }~~! .,..,' ':';~I: :>:-::'u,',
~~Qffaultayoidanceand
fault tolerance built
-..:I.. I
th
C>}JIf.>JUUct,o'etc."
[10]i::,~:t,~' ," ,,~-, -------------------------------------- ~. -
u~t satisfie~ 'lis spe~.fi8attoQifi (jllS6~~ qWl:lity
"
"
", '
"'
into
,
'
assur~ce ent;uJ; tlie!~~Jfi&ifi~l)a'ii~y~~~t¥8b
"
. ,',
' .................................... --
--'
-
"
e).RdJiliibjes~ att~mpts to meaSUre howwell orbad
"
'
ofboth
tHe-pro'dhct behaves:unrler a range of adverse operat". I.; h '.' f-bl :.d IIfn~'iJ2?i'lf,:jirub~1
'
the software product and theso.ihvare process: The
iii~\t6(~ditiotis. Fo~ example this includestest to assess
" , ,i.: "'11';'Y':II;(hli;(J()ij£1~Cfo~rll'
responsibilities of software quality aSsurance includes
, ,,"
the possibility ofunaceeptable results with valid inputs
,d -: .Ti:.JJ j;0dc ~fl1 fli l?udol
-:>o,'}...!J:m OJ t"",; '-'~~", .. t'.
the development of various monitoring standards'to
.'
,'.
,'.
, ..
and the iuxep1fibility of effects when the'pro€luct-isgiv~n ll?-put [ 10]
inya1id
,<.. J " 'ijJ-;' G "': I rlfillp (!() %:.7?,U:)
which software must.co,nfo~ as, "Ypllas,!!1e,establish
(1(; ~.'I0in '.Ii
:jL,i
:' / ;,::: " ',"
, , ,,' ";!, , ,'...J'; -:JJ1,,}()![!_,Jnlt.:'
.::.'
'
':
,,
ment of monitoring p~6c~~es (~tl~g~liance
"'''''~',,'' ,\ .;.'
"
d) Performance: measures the extent to which the
,,
cl1!--!Gi.A' ""';'
with quality
those standards
[9}, ,n~~fQry,;W~tjwpof
ware
assutance~fu:st~tP:.e~~~ty
of the .; soft
.,
metric parameters h£ve eV6i~ed'Hy~plti~
. "', .::/~! ,"m! ~!fIT,lf'1~ff!40
'
'>\ ;~'
.
,,:
for
"
to
,~hich.the
product satisfies its desired outpuf specifica.
'. >,
'
.
, ',' -' ,;.',':jl~'/,~ gill;!'): '{.1
permitted by its specifications. F of ~plethis includes
"
,
"', :.., 't '. ,'"
whether
the
product
is
cost
effectrveretative
to
other is
test by the user to determip.e how~ th~ prQduct
')
'..
.'
,
'
'c'
, ~(
. ,: ,;'.'''" ':"T'" .~;-.
use, whether the product perfo~~~9ions, and
b) Reliability i~ a 'measure 'dfthe'ftJquencYand criti~"
."
.
'"
--
' .-'
.
"
TheJnfucrUi1derlYing principles1hat define DSDM
are
, :) 1
'(,
", ,
'
.
,
,",
'"
ouUined ili [p]. Also~ they make the method a veri
bi'DJ q-! i
,
.'
,
all quality
assurance
outlined above,
The nine
table
so~e
processstandards
that guarantees
compliance
~.-'L' :'
witb
principles are listed as follows:
I
';: ;,
., ,
:1,.
"
: Pro-active User Involvement is Imperative:
... Ji.:
'
, , " ,':i". ';,~. (I-'
products, [10].' ,'i', j~~;~' ',:,:' 'j'-;' ~f!ivlr;;, <,wi
",
0
..
to, ,J .. ,,'J . ri .'
i, '
met when the correct product is used under' conditions
to
'
tio~l1O] " ::'.: ',;,;, ,"
! .J.." ;':.'{ 'CJ;jj 3Jrti~ ;1'.'qOI~'i
,
"
,t}):eoiTectness,: This.metric:measures the extent
.
"
. 'i:ifluA:Jf)db~~l.in.GJzni
a) Utility: This is the extent to which a user's needs
are
.
'
~~s;;~e
.on carried
query processing
etc. speed of re
~q;~~;( $pent
J~~t. are
out ~o ascert~
~ to serve
as
basis
deterffifiifugqriciliiY'~~Jd'~~~~~o.ducts.
,
..
-- ,,:, .:.,11e ':2'''r~'.'D~:;td,''
the 'softWare product: Somesoft\V3i~~M;surance
Some of these are:
'
B~?~~~t~,e19H~~~threspect tot~me and space con-
software process and:ther:eby~S<1\mSUi~et(uality Of .
--
:
", -:w,.:' The user involvement in DSDM is not just ac
'
tive but pro-active.
approaches
In
many
other
""" .......... Jg~.~ ',o!A>,..D".m.~
-86 -Promoting aualitv-~e in Sottware Products II1rou{h
tI)..!~ic
System DevelopmeoJ Method (DSDM)
cess within the team can be verified as accept
,
-:,;i.iJ v) ;iJ1T flO [t()!tJ::!~bj,:fL ; ;~ ii;j ':
to system deVelopment, the users are involyed
"1'
-,;:"
, !(: '~jilL.j
-! ' ,
. .'.;
-.'
- '.!
:..'
.
'::-able.6ysfaIfoulSidetDeteam. Also, having tTe:.
~" . ~ "
'
;'
" ~'f"
!1r , ('' ," '.
-'(IJ- rf
.U I,i, .'I ,"0 ('J 1/(1
'" ).tJ"~Jr:." ",:,,'
at the beginnkg during system analysis w4~n
-,
1
'I
I
'
,
qUellt deliveries at short regular intervals (say 2
1
,,'; ,i... , ,I; ""[I;"" r ,I.',r{-,(:. ,', :', .,,'
requirements are elicited. And also occasion
ally throughout the development
work for ex
,
, "J." 'weeks Y provides an easy way . for reversing
! 1 '!~,in:'wrdKg:deci~lo'~:rioticcil'in
'earlier deliveries.'
,,
ample occasion
dunng when
the diereview
tions, Another
user is In-of'4.
- '.,
.- t
functi~na1 -sp~lli~-'
Fitness for business purpose is an essential
volved is during the acceptance testirig,
criterion for acceptance of deliverables:
--Hdw~
',')fj Tra.ditio~aJ1y,.tlJe
ever, in tne 'DSbM the useris paff6ftlie a~l
velopmentteam
and
is
been
therefore'
ticipant ftom the beginning of the deve1opq1eIit
,
-
--
,'}
Fi '~r~~~t\sfYipg@I~tIiI:~I11~nt.s in the
i~uirement
!;
ct'maJorpar;
process to ,the end. This attributet.J)m~~~
~--~--- -
-;
focus of developers has
'(
,' -------------
DSDMin g(),od ~ead toaddressqu~,~,~
.
:;: i :' i)9R,WffirP.t.ro B~~~)tJJ7fo~s.rather is.build
.
"'; '1.l J~, Jl. ~'.,1 R"" ( J ;> ".,f is, Jfit.' for" business
'.",
.' while some
,
, ~"-ingJ the.DrOdilctthai
,'
-' "
J' ,';>"
'.,
t'1
'
'
''''', ,'., (: '
.
(hud 10 CTooiffirnw-t)nr. no' J/)}:tn:,/I' ~,-I, ,': j.:i:
~e
operatio~ 'characteristics are sufficiently
ance issues of correctness, robustness, perfor
,
2.
",
",
be'" left
~ '_'oocnmcaHSsbeS:c3ri
'~;':;':.t!],l1..:l[jJn;J22.J. 'f!~IJ,I;i)'-, if-,"
""j"tJ_'~:~
mance, ufiIity and ~e~ability
", ";--, de
OJ-;)
DSDM
teams are empowered to mak~
. ,
, ::, ,,' - ',' " ',r E:
cision: In order for development to move on
,
,
':'
,
", '.
'
""
I J ",!JlSVCTG12g;:fiortfJfW'j<V;";',, , 0
- , 12!;.' i !~:
.'
'fSiAJr!<;p~~d~ct~ ai~' d~llveredfi-equently,
the fit ~
, :,:Ji;-Ir,:
,
"
. 1"'1 :: !;)i' i h
cuseson quality assurance during development.
,
i'1(.? '10 raeliV&aOTes:oyefiStiriIig
., :', ' ," ,::,.;,,., ;o.,
,'
,
" --';J(i!qfTli~s~rJ¥purpd1eois1ciedas'a basis for checking -
management's approval to take' qUick
dtitsioDs.
,
until later, ..'as long as
--mbuStmCfne'snoiftenn. This principle also fo
"
quickly, the team members always have the
,',
',' .'
,,
that thoroughly tested
~) r: j 'I CJ 'i. 13nd!Vanda~. products are delivered per time.
Since DSDM project are necessarily wOfl&1g
,
'5. .(jitl)i4teltativ:e;:and:1ln~r~mentaldevelopmellt is
on tight time-sCales,' a long aecisiorf pt~ tffiit
move slowly up and dowifthe 'hie'ratchy;br
,,;.(, :;. iJ~;;g~Jt1Jlt(MR,~V:~pjgeo~ ,an accurate busi'.:',; :'_,!.'(~i'~[~R~tt~Jm;;1'4)~, ~?~~, software evolves
management will ,reduce the chances-of(de!i.1£
~J~[Jbo~~t~thfg¥ffl1~8~~~~~:~~i~erativ~ devel
eringwhatisneededont;U:n~,.1;i"" j:.:!-; fbu1w
3.
-
,-
~
--
.
-
opment :11te user members provides almost
,,
Tbe focus is on frequent deliveo/ 9!~~d;
uets
(T~me,Boxing):
,
instant Jeedback onthe work done by the de
~j'fE i'.b55f1 (!'1~2JJ £ rbii!wo) iif'..d,' ."
Apan:fi.:~l11
-"
,~
i. :;.. v-:elope(siIice- they belong to the same team,
;:;!(/!dJlIOJ l~)imu /:;:.;:;1) ;'i !Jul' ,"
~~~.f~~J~,t
.
'.
.' ; ~0t 'By letting' systems evolve, DSDM ensures that
~~b!Jbf!i ~o~~~~gfr~~bJdfb~rjY'b'ci'foie they become '11- '
DSDM~helps to obtain usable sol\lti<?~
~OT
,
"
i.1.:JI-!b~HSt1~4h'6dit~t.EVeh insittiations where there I', f1!.
",,",' I
!J('
business within few months that could be added
'. ":! n Adct onto
,
'
incrementally from
time
to,',time (Time
,
opment process over time. By requiring ftequent
?f1 °'is;artiuirl~in-the requirement, this change could
.
delivery of products, the decisiort
triakingItpro
boxes).
also
(if1j~teffecr«f m'llitute increment of the
,
thus solving the moving target problem This
is
.
provides a m~~~f c~~~~n1rig
,
:.id {f"
product,
, '.', ,",':'10
and monitoring the effectiveness ofthe d'eveI
:, ":.
I. ,;':'
' ',~i~'"
;~,r~' i :)' .'
-H'n}-'i~n~gY~~~i~~m~tfqrquality~anc~.
-,
.
,
6.
87
ried out to ensure that the new increment har
All changes during development are reversible: At
"",' '.
every stage of the iterative incremental
monize with the previ'ous model. The test as
work are kept,
you go principle makes DSDM most suitable
process, the archive of preVious
promoting quality assurance of software prod
for
ucts. .:.
so that one could easlIy back tracldf need be.
We can always establish a safe point in
development. This is also ~earing in ~d~t
9.
there are ~ccasion when the Wrong pa~ tbuld
,,
been taken.
Collaborative and cooperative approach
between all stake holders is essential:
have
7.
-
Promo!iQg.OIJajltyAsslI'ance in Software Products through the Dynamic
-System DevelOpment Method (OSDM)
O.M. Bamigbola & J.O. Daramola
The PSDM utilizes wider level participation of stake-
Reqnirements
''', . " , "
'hold~rs in the-software-development process. This'
a~e,:;b:as!e-liriea!!at 'a 'Ii'igb '
, level: This principle of the DSDM ensures that
, 'includes
developers, users, managers, operators .
'etc.:rhe
concept ofJoint Application DeVelopment.
"
principles seeks the.collaboration of relevant
agen
".
, 'the reqf1ireineiit~ ~ij'~~iJeeJblp~ dur
ing the business stUdy'~e the' agreed'Iii~leV~1
cies and opinions to ensure the success ofthe de
,,
",
scope of the project. ByBaselinihg offteezing
velopment process .It makes mandate and target
requirement
at
this
p6int,
the
cess that follows. Thi's is riecessary to'
det3ileorequirement
can be elicited through
ensure
the iterative pro
that photocopying activitIes are direBt@
requirement sacrosanct 'and definite for the DSDM
project to
achieve.
,,
8.
focus
on
and
strictly
4.0 SPERU -A DSDM Project Carried out at U ni-
by the set of requirements 'agreed on. \
versity of Dorin
4~,! Ua.ckground to the problem
Testing is integrated' flitongh~lli\jhe; life
i
~ ,",'
cycle: In DSDM, testfug of products is ~t ~on~
.,
"'.
',"
q:': . '."
The-drudgery associated with the-pmcess ofregistrati~n
;
velopment
cycle. Sinceto~~ftHeae.:.
pattiaISy'Stem
'at-the
end but througlibuffue
of students and computation of their examination
nent are produced very'earlyin.the.lif'e ot-the
results i~ awesople. Quit~ worrisome is the fact
DSDM project and evolve into:tlieideliv~ied
that th~se processes are carried out every academic
system, the philosophy bfDSDM is 'test as you ,
sion,
ses putting the operators in a continuous and ever de-
,
compo.;.
'
go'. The software components are tested im
mediately after being produced by the devel
manding cycle. The computation of examination results
and registration of students is obviously an object-cen-
,,
opers (i. e. technical aspect), while the users
in
the team test for functional suitability. All
of testing including quality assurance test
forms
are
carried out
incrementally
throughout
Integration
testing
is done as soon
as therethe
is
project.
a need to integrate. Regression testing is
tered activity, the student being the dominant object in
this case. Hence, the need to evolve not just a computerized process, but an object-oriented software design
and implementation that will effectively and
efficiently capture all the important objects
registration and examination resultprocessing within the
also car
associated with the
r
88
"j !
O.M. Bamigbola & J.O. Daramola i
Promoting Quality AsslI"ance in Software Products through the Dynamic System
Development Method (DSDM)
d'
,
University and the interactions among the objects [4].
go~~nu:nent and state ~f origin, sessional transcript,
Also of importance is the sensitive nature of the stu
final yem: result transcript, and departmental student
dents' academic information. These factors underscores
data albums" :,;
Data:~~~~rity,:- Mechanism to guarantee adequate
the need to adopt a software process that will guaraIi:"
tee the production of good quality software that will
protect\pn
pf da~a and general security of the system
,
wholesomely address the various !ntricacies of
should be irriplemented to forestall unauthorized
IIlaIJ.agingstudents' information
mlrnSi!?l1;\aq,~1~~t~tp #;a~d. [6]
and
academic
'."
,','
,
,.
..,: ;-"; :' ,;', ,<j
This genuine and noble desire necessitated
transactions.
,
", ' ,,','
the design and development of the Undergraduate
.4,.~,QJ>j~f!~},d~J1~m~a.i(ion in
Registrationand Examination Processing:System
r~y'i~~mWF~9t;!of9.~jects within a system could be
SPERU
.,
(SPERU)
software and the choice of the Dynamic System Development Method (DSDM) with the approval of the uni
a~hi.ev~d"lJ~ing the ,steps outlined in existing
as
s.\fPpo~~d~y [1], [5], [11].
proposals
-
' ............................. ,-'
I
,-
..
,
versity
management.
A thop:~~~~alysis" ~fthe SPERU requirements reveals
4.2 SPERU Requiremel1tsSpecification "" It was agreed
th5!.!!~~~: ~,<?I11i~~I!-F. objects within the system are:
that the automated system should meet
Uniy.i!.l(~p.y!. :Pf!ppf!l1Jef!t, Stud.ent, Course, User, Score
.
"
~;:j, ';,';} ~
the
following
requirements:
Inputs: students'
'
set
Enf!J'~
of
personal
registration by students; 60u~se url-ormatiori-detaifs ana
" ,
,'0:
",'
<"C'
,
",
"
,"
9~~M~!:Hfi~~~,~A!~~p~ept, :t~at, allows new objects to
"'"/~''' ,,:)J ,'( i '( ;"'(1,
;,
'
9#?-5BPR,j«;2~~J()S::9f!lP~~~~~pn is a phenomenon of the
evp~ve #,oIp:r$tiPg 9bje,ct~~ The objects identified are
",'
',,'; ',:,~.:,
withholding
of students,
students'
standing status for
suspension of studIes:
results.
'
,~~,~m4~Rt11}9,€fI}t)Yi ~~l~ ,others are compo~iti?ns
';0'
cumulative grade point average, determination of
gooo
"
,
" ""
"
academic
programme,
listing
level within
Outputs: (Reports)
-listing
of by
students
by typea of
programme and faculty, listing of courses registered
s,h<jlM91-,Fj8Uf.tr:4.!./u .':
, ,.'"
. '\'/:":.' ~,'i; \", :'.. U'):~"";
"". ',: ',.,""";
,
by
students, course attendance sheet, course mark sheet
, '.' " n<.,
,
,r
..,-.
list of students (to identify good standing', ~thdi~;'al
and probationary status), listing of stude~ts by-io~~
. " 'j,
, !: ;'1, .
.,
with
sheet (for
recording of
raw grades,
scores course
by score
lecturers
aftertheexamination),
performance
,
Course
of
Processes: collation of students resUlt, computation
of
'.
Register,
cou~se ~epql(ff1Fi!...P'~pqr:f'!lfl1t repo~t. Some ofthes~ objects
information,
coursemarks.
,!:<S-Rjrrf!!J:l!':.{:.!C?wse:
,,'
.
.,'
J
'J
.'.. I;
:. ',,'; '-,:':' :: ,';. " :!::
t " :',,;) ,; :' ,;',' , ' :" 'J i .. , '
,...! . ,,' i c,: ;..or !~;, ':;;'J; ,
I!" ,..
/
0"'. Bimlgboll
'
"Pr0m0tin9~OiJBrJty'Assll'ance in Software Products tluOl,l!#llhe Dynamic
&. J.<J;' Dlrlniali
,. !;
Department Object
.
.
, O!::aCdtyy:OOnQiA!(j; X;j fli,
, ,Univ~rsi~J;r9~i~. ;!nf) oirt"
Name :string location :string
logo: binary
Year founded :integer
Session: string
Currentyear : integer
P.rQgr~mm.; ()bject
Parent Department.
Programme name: string
degree: string
last level: integer Department:
Object
[ add new department]
[ dele department]
DeleteQ
,
i-.
. Duration: string
c:: i d .<.:., '.
Department code: string!
AddO
Edit Hch8nge-departmenf Info]
AddO [ add new. department]
, ,,:'F f- , . -. --
DeleteQ [ delere department] t=rlit(\ r
r.MnnA Mn<lrtmpnt infnl
...... ''''j'' ;
9...J
Student: Object
Name :string
,MatricNo :string
Type: strirm
Sex: string
-
'.
I Department: string;
.'
I
Course: 9.bjeCL-..__._
;
CourseCode : string
i
ExtemafExterminal:string
Delete() ::'
IL
listO
,
EditO
,
I!
i
---.Course Object .-BrowseO,-_"--'
I
DeparbT]ent : Object
Studentobject '-
I
!
T
," .'
... .
J
.
session r$lnnrr---'- '" .-
.- ~.._.
EditO ... ........................j
.. '-'-'--'
AttendanceSheetO
,
"-. ._ -
,
!
rMarkSht().__.._.--c-'" '''C:'
. ; CourseSheetO . .;- i
'
Registei'Courses: Object
!
Parents: Course, Student
,
Cumm- GradeP9intAverage: float
Previous_GPA: tloat
,
Performance: float
i..- - '''-Object
---1)jE..!'!!
.-{
ScoreEntry:
.!
Parents: Course, Student
Course:
'.,.
Course: Object
Session: string
Object
;
.--,i....se$siolJ.;.$tJ:in.9. .- -.,
Student: Object
,
Sre: integer <.
Grade: integer
Student: Object
AddCourse 0
DropCourse 0
SubmitCourses 0
Programme: Object
UpdateScore ()
;,
-'-'- ._, - . -. ' 'PrdcsGrade() .'.
--.... -,'
Object
Session: string
Collate
Registrationlist
Parent: Major
Major: Object
0 [collate scores]
WithholdResult : Object
Major: Object!
'
-hrent : Major
. Session: string
!
Major: Object
'
GPAO
CGPA 0
PromoteO
WithdrawResultsO
Session: string
level: integer
c
JSpension : Object
Parent: Major
..Suspend ()..
,
'J ,: , :.i
'; ". "
;q,
Session: string
. ,NGReason : string
. ..'
':":.:.
'),.,
Cr'
'.. ,
WithholdO
ReleaseO
"
" '\ ,Yo" :
Figure 4.1
"
AgeO
Parent: Programme
"'::':''':':.L~_ll::j';, ".
, StudentResult:
AddO
DeleteO
EditO
RndO
DepartmentReport: Object
,
'.
-
Permanent Address: string
Contact Address: string'
Next of kin: string' .
Kins Address: string
Year of Entry: integer
local govt. : string
level: integer
Entry level: integer.
Nationality: string
Student status: Boolean
Total Credit Offered: integer
Total creak Passed: integer
Current session: stril)g
GradePointAverage : float
!..
I
...
Mode of Entry: string
'.--, ----- . .__...,. .,
r
'.
,q,o?el;lepoj
_peleteO- ----....'
.-. !'Pa'n!ntst
Course, D,epartment, Student
----------------------------------------------------------------- h
Course lecturer : string .
CourseCategory : 'string i
string
',
Add()
.. CourseTitle.: string. ~-.:t.-'U.:l
IntemalExaminer:
Major: Object
Parent: Student
Department: string
Programme: string
Photograph: binary
Date of birth: date
Session: string i
LStudent :-Object-.:
,-' --------------------------- .-.-.
CourseCredit;: integer
r
I Parent: Student i
.
, ,;,
,
,
Department: string
.
I
89
System Development Method (DSDM)
.' ;:
.'
;'
SPERU Objects
0
Perform'ancelistO
Student Data 0
Broadsheet ResultO
,
...,
90
Promoting Quality AsslI'ance in Software Products \I1rotV1111elDynamic
System Development MethOd (DSDM) .
O'."i..B~migbola> & J.O. Daram.ola
Il1heritanceHier:uchYID SPERU ______________________________ - .. . -';":;;'~!J1SQ,~r.i ". --. "'J
4.4
.
- ......................... ,-
".., -.. _____________ -- -'.. ,,'-.j
,
,
___________ '0',,_
'
A representation of the object class hierarchy showing the inheritanceIelationsm.2 3!!l9-ng qbjects is shown in
c:-:(:i~ : 1~'Y' nf:;,~.,(1 ! i
.
..
.
"
);~ :,1"" : .r,
figure
4.2. '
I after
"
L,'; ,'1~1"','1 ;,:',')I:'! I !
successfully identif)ing the objects [12]. ..c... '. ,"~::.':~~::>_:
..: ;
'"
~~
Pro
".> I"
';'--:
Dep~_nt--=,_',-- -.' t,
R~P9~ 1onit!; ;
-' . .;:;I-,',!.\?
:~ mnfi'l ! ,..
'U h__' __________
DeDartment
-
i>
Qn,,,, nc,,,...,,c,
I ,
'.. I~"f..,,,:,c;<:;n
,.. ~ , , ".: .
.............. "'.-' , ;".,;"~,,:'. I
I
,
:
..J
f,,):;;,'.,
'.
Register
Course
I
i
Course
;._,~=~:_~~-'. E.~port
.
'" ,
Course--. .
r-" ,';,,~,~:;;-I. .:
Student
, '. ';~ :, ,:
, -- - .. -, - 0,
',"
,.:. ,01'''.- '.'" I
~":Jf;(~' ',:;;~:tJ~~ <, . :,,' !
!89:':,]JIIHI.";::
, --..-
(]ndi I t1l,i,',:; ; ~ '
~ ................. )
WithholdResult
">,",,,'''-,',:'.16,':' -,'
1-finor
Maior ii'~}:.n2E.',O ,'.,'
--- ------------------------- ,'
'
,
. ' .................. , ........... ", -
N.,.."" : ~ ,; ',:;" , " I
.-. - . --,
, ',,'
I
, .: j:;:" , i I~'" ,:~; !
'- _..~,~, ' _.~,
~
::-:£;<,.
I ...
;~:',." ,; . :~ i
.:d\v" "','1'::' ;
Susoend
"
StudentResult
L 1,,''-'' .,'_".;;l!F:
:I.:i;:r; : !'l,,1:;;~
". ! i
I
- '''
'" ,;; '.r ' , l
,~ '-'
-- ~ '.:
r -. I( 1 ")1..
,,:,"!;
',>,; i :'- ----- .': i
.-. "',.ii:,':"'C.
. .-;.
.
... -- -...
.. '"
Figure 4.2 '
~Ias~ H!~rarchy in SPERU
N.S: Rectangular boxes are used to represent objects. The Arrow is indicative of the phrase
.' :'.');.:-C L';"FJ'':i~
'inherits from' .
f ,f. ~niJi" "
cr.M. Bamigbola
Promoting Quality Assurance in Software Products through the Dynamic
& J.O. Daramola
4,5 Object Aggregation in SPERU
,
,':
,
91
:"':"i'J .o.,~ ,i:,,'", , System Development'-Metho<tiDSDMr "
'. -'S;i .s/~ a
"""0'
!
'
,
,.'
'. '.'
'I,,:,;:;t, i'V,Ii'j',nr,? :12Bdgjj'I) If) P :>1,)610 qA
,,
I',. ' ,,' ,,' :",; ................................ 1! C"
Object aggregati~n is generally used to illustrate the static structure' of ~ object -oriented system, [5] and
,
'ji~r,ri ,i,:j~':! I f,'..,01:;-1/
"
,.,/~
~;,i"
'
.,: '
[12]. It shows the details ofhowdifIerent objects are 'part of other objects, This makes it possible to
, ,,', ,f' w'::~ib!!!;-!iiUi1')i;iqr;HJob'/~}L ;)';j;';lL..,;"',
identifY objects that can be represented 'as sub-objects of other objects,
,
,',l~, ;':',;; i1:1'J1} bboUI !r.flOi't3!:1;';;
"Ii;::'.; ,I,' "
The object aggregation in SPERU is shown in Figure 4:3
i:", ..,'
, ;, ", ;':0 ,;,d1'\;; ;, t''JdCfl:::..m 1~';" i
'''''' ", j).',
, , ' ''''''
1
, ,L:,;~:'
, ",',,;,:./~' f,"J: L!,r,
~~ER.u
',' i,: "J' '. { ,; J::~i;; /1;';
"
,'" i:<'>1';/,"':I(]":CW'I(! 111':1'
'" '
'I '
') 't htri'," ,:!U', ;;; ':. ;"~',y:
I
",;.1 ;""''''1,,:-1, ..' '
University
,"
D~parf
, 'StUdent
ulent"
"'; .; ;'t:: !),
',' . J " ',l ': -::'J 'J,'
r:''': t :,:
; ;.,;.jJ;
".; ,);-: i :;
Course
User:
;;' '-.::':
f.:i~:~' I.
'it un -:f!"
,
I',10i
p' .""""..
Progr~!~
,
:1:,.'''-'' ,,','
."
tyj~pf~elifd
r
'
, , ,r'," ,
"1 h :ff1 !<, 'I.
, '; '~ ;;.->'
,
CourseReport
,
RepoI;t '
. ',' ..dffU-: "
,
~ ,/,: ,'Ii','"
L :,,,,<C'!'j" ..Wir ?;,,'Pi
"'-""
Major
Minor
,,
",
"
,.
': 'RegisterCoutSes- <A~;
, ScoreEntry
!i ;,\.;,::
.~
:.
'
','
WithholdResult
,
Figure 4.5
~:~~~ll~;~~~~UISes
"., I'
Sc~reEntry
StudentResult
StudentRepo
'Aggregation of SPERU Objects
: The aggregation, is shown using links annotated with circular blob meaning 'part of', The
ellipses suggest that further. details about objects are not shown.
~'.
, .,
92 Promoting Quality Ass~ance in Software Products IIvolJ!1llhe Dynamic
0."'. Bamigbola & J.O. Daramola
System Development Method (DSDM)
::i':. ':~. ,:
An Oracle 9.0i database seIVer was favoured while the
4.6 Application of DSDM to SPERU
; "!.,,;:..,:::.,, :.>.I',,~j::,,:'
..'
..
The group oLSoftware-engineers. form within the Mic~qsoft Vi~~aIBCl;sic 6.0 was recommended for
.
,".
. ". -' )')ft,. ; ::) i'}(!; , ,.o':1i :".' ,,' .
~ev~loping ~he ffo~~-e~d client application.
university assigned to this task had previously
used rapid
~
,
,
',..:
-"
:
application development (RAD) approaches in handling "'~Functional Mo~el It,eration: During this phase,
the
".
'~fI';";;;".'<;9. i'
'.
.
.
some projects with good measure of success, bllt!ls~r !!!~I!!b~rs of the DSDM team were involved in
and specifying the contents of the interfaces.
decided to employ the DSDM for the SPERU de~g
~ ..I ,.
.
project
for better result. A DSDM team of six members was 'fhi~J1elped. to gain user acceptance and confidence.
constituted consistingoftwouserm~mbers. ~eg[oup -- _JE~.~~to!yp~_~e~~.a!~~ ~eveloped for the
users to
and have an idCSl of how
practically it is going to work.
I
Feasibility Study: The initi~ feasibility indic~~ed that
used the DSDM lifecycle as follows:
system
.
.i" ;~,I: ',.,
"
access, thi_~~lso.--h~!p~~ tht?m to und~rstand the
. -. -.. ..
It also eruipJ.c9 th~mlo C9~tribute to the design
process.
DSDM is very suitable forthe project, cOI1$igering the
.
nature of the tasks involved. The scope of the problem
~
The f~amres.tbat~e.r~ Jiked were retained while
the
------------ L -------- ,-- -,'
.
'. _..
..
lies solely within the non-trivial business d~ .
Business Study: The business study was don~
in ;owr§J#~YttP w~re out righ~y discarded. The user team
I
- . --- ---------- -,
two
i
:.':
.'
.
. -.
weeks. Series ofJoint Application pevelopment (lAD)
~ ~"."compqp.ents.
of system
,members
also earned outWorking
testmg of model~
the software
components
:
sessions were'held to accumulate thoughts and ideas i_. .
was also released to a Facuhy to try out and to
about the problem and to agree on the priority
record their comments and impressions. This they
requirements. This involved all the Examination officers, encourage wider participation especially from other
did to
Heads of departments, Deans and Sub DeansofvariOLlS' ~efs outside the
team.
faculties within the un.iversity. The busin~ study repons
Design and .Build Iteration: This stage concentrated
-
like the business area definition, the system architecture
-
that
definition, the prioritised functions and the outline plan
were prepared.
,on >.
completing the functional requirements
... .
~d been agreed upon as specified in
~~ ............ ..
the prior -'-~"
f.) it)' functions report of the business study. Al
-- _1 ------------------- '. ~' -------------------------- '.
The
system
recommended;
architecture
definition
report
...
. a Windows NT operating system platform for a :.:>
Client!
, thoug~ this had been partially buitt'during the
"-"- ,,'O'jl:.r'L jS : i r!(ji;';':',';':,
...
fin1ction~_~~~_~literation, efforts were made at
..u ................. .. .-- .'
Server Network configuration involying.uI Faculties 'J!;~ t!.t:' it~;i~ stage to complete them and also
linked
to the university's central academic office. It also
incorpo
recommended a local area network (LAN) among tIte .'
.,,_1, ,"
departments of within the
faculties.
rate the non-functional requirements. The
user
,~mbe~s,epsured
that these functions are tested
)1"..1',
as,..' soon
as they were
completed.
.~
Promoting Quality Assurance in Software Products through the Dynamic
o.M. Bamigbola. &J.O. Dar!'I1),ola
. System Development Method (DSDM)
Implementat~on: rl1eRl1as~W,S1!p?essfully ,
93
components to the user very early in"the
carried out,
development life cycle
the u~ers,~~,thel~~llJties were
trained, and form¥ testing~as ~ndll~ed after
6.0 Conclusion
which the useracceptancetes#ng was carried
out successfully.!., ".'.,
",
',' .'"
5.0
Quality Assura,I)(~eJ>~p.~fits
sons from~PJ!:RU~
."
r':'''~''''''
" '.J /"
I
'I: ;
°f~~:VM:
j'
,Many of the problems associated with software
les,:,
devel<?pment
especially
as
they
affect
quality
'
<' 1 (1 ' ' ! . )
,
j."
1:.1.1
Many benefits w~r~/d~riY~La~,~!!~~* of the
assurance
o(~oftware products could be minimized if not totaHy
elimfuated through the, adoption of a software process
adoption ofDSDM for the SP~U.p~oj~;wbich will
that W041d engender effective and pro-active user
also apply to many other b~s4J.~pr9j~..Sowenotable
participation. Jettisoning the old fashioned and
benefits discovered are:
:
1. The user acceptance test certified;t~e software
product (SPERU) in terms
qf quality. It was
,.' ..q,
adjudged to have' met its requirement
specification.
2. It was very ea-sy for the system to gain user
retrogressive
principle
of
establishing
delimiting
boundaries between the client, user and developer and
embracing a software process like the DSDM will go a
long way in ensuring that Client organizations get more
value for money in terms of accruing benefits from
system de~elopment expenditure. To the software
acceptance because of the feeling of being a
industry
DSDM is a probable panacea for better results. It is
part of it all along. The user had confidence
fast proving to be a veritable tool for solving the'
moving
in the workability and performance of the
3. Itsystem.
was possible to accommodate additional
requirements that apart from those initially
agreed on that were considered important
enough for inclusion. This is due to the
incremental nature ofthe development process.
All that was required was the team's
decision
on the appropriate time to incorporate the
requirements as increments to existing
prototypes.
4. It was possible to deliver usable product
t¥gerproblem'. This is the usual scenario where the set
'---
'.
.
of requirements of the clients would have changed
the completion. of software development due to the
before
prolonged software development lifecycle. This problem
is particularly synqnymous with the waterfall model. The
global software industry and particularly Nigeria
lot to gain through the application of the DSDM in
has a
attaining good quality of software products with minimum
time and cost overruns.
-
- '"\!
!",
, ,,1
94 Promoting Quality AsslI'ance in Software Products throlV1 the Dyniimic
O.M. Bamigbola
& J.O. Daraniola
System Development Method (DSDM)
References:
9. " ;. Inee, D. (1994): IS0900 1 and software quality
'"
1.
Abbort, R. (1983): Program design by infor
~
mal English descriptions; Communications of
the
2.
. .' asSurance;
10. . Schach, S.R.' (1996): Classical and Object
ACM; 26( 11), 882-894
Oriented Software engineering; Irwin/McGraw-
Bleechar M. (2003): Architected RAD tools are
Hill, New York.
delivering major benefits; A Technical
".: ", '..
Report
11'~J : 1. SliIaet,' S:; :a:nd 'Mellor, S.l (1998): Object
of Gartner Inc.
....
J.
MCGraw-Hill, England, [613-676]
Budgen, D (1994): Software design; AddiSon':
,oriented systems analysis;' Yourdon press, .
~!; ']r. Engle*oodiCliffs;NJ. [256]
,
. (.
Wesley, London. [200-213]
::-'.,. AddisonWesley~London, [207-285]
4.
Bamigbola a.M., Olugbara 0.0. and Daramola lO.
13.
(2003): An Object-Oriented
Software Model for Students' Registration
and
Examination Result Processing in Nigerian
Stapleton J. (1997); Dynamic System
-
Development Method; DSDM Consortium,
,:..' Addisoh- WesleY, London.
" -:.
Tertiary Institutions; Science Focus; Vol. 6;
[70
80].
,
.)';; "i
5.
Coad, P., and Yourdon, E., (1991):' Object~
oriented analysis, 2nd ed., Yourdon Press~
" -',' ~~:'; :..) ,:; " '.'
.,',; "
'"
Prentice-Hall, Englewood Cliffs, Nl [86:256]
:,.:JJ;;, if. 'j;' '.-. :',:":.
6. Daramola lO. (2003): Application or'SoftW;e
.','i,
engineering and RAD tools; Unpublished M.
"
Sc
7.
Thesis, University of Dorin, Dorin, Nigeria.
Davies, A.M. (1993): Software requirements:
Objects,
Functions
Preirtice~Hal1;
Englewood Cliffs, Nl [64]
and
States;
." '-:.,; ,', . ,
,
8.
Davies, AM., E.H Bersoff, and CamerE.R.
(
1988);
A
Strategy
for
Comparing
,
Alternative Software Development
Life
IEEE Transactions on Software Engineering 14,
Cycle Models;
[1453-1461 ]
"
12'.'."J S'6merville/l :(1998): Software engineering;
I, "
.::
!',
Download