Abstract
The success of modern ICT systems is not just about the technology. The human and social dimensions are also critical – especially in terms of understanding the context and environment within which the systems operate. This is true also about the environment in which the system is developed. Although much effort has been expended on building and analysing formal models of software systems, little has been done in terms of how software development teams work and how this might be studied in a formally-based way. This research looks at one of the fundamental aspects involved in collaborative teams working in projects – the transactive memory system (TMS). This, well established, concept in psychology is an approach to how the different people in a team regard the capabilities (knowledge and abilities) of each other as it changes over time. These capabilities are the basis for decision making in software projects about who does what, and when.Using a formal model of the TMS of a team, based on agent-based modelling, simulations were made of how teams might operate under different circumstances. The initial model was validated against published data. The model was then investigated in terms of how different types of project management affected the TMS of a team and on the team’s performance. In particular, a comparison was made between a traditional, plan-based approach against an agile method using pair programming. The result demonstrates strong benefits in terms of performance and learning with the agile approach.
Highlights
MethodsEach! agent! has! pairs! of! numbers! in! memory.! In! each! pair! one! number! represents! a! ‘chunk’! of! knowledge! and! the! other! represents! the! level! of! expertise! in! that! knowledge.! This! knowledge! can! grow! as! the! agent! learns! and! the! expertise! levels! can! increase! as! the! agent! gains! experience.! Each! agent’s! memory! ! holds! information! relating! to! the! knowledge! and! expertise! of! the! other! agents! in! the! simulation.! This! memory! represents! TM! and! this! can! ! develop! over! the! course! of! a! simulation! as! the! agent! learns! about! the! other! agents.! Each! iteration,! each! agent! is! given! a! task! consisting! of! numbers! representing! the! knowledge! required!to!complete!that!task.!Each!agent!values!their!task!in!relation!to!their!own!knowledge! and! expertise,! and! ! their! beliefs! about! the! knowledge! and! expertise! of! other! agents,! and! may!decide!to!offer!their!task!to!another!agent.!They!do!this!if!they!believe!that!the!agent!will! gain!more!team!value!doing!the!task!than!them.!Each!agent!!chooses!from!the!tasks,!if!any,! that!have!been!offered!and!decides!which!to!keep!and!reject!based!on!the!value!of!them!doing! each!task.!This!results!in!tasks!being!redistributed!based!on!not!only!knowledge!and!expertise,! but! ! beliefs! relating! to! other! agents’! knowledge! and! expertise.! After! task! redistribution! each!agent!increments!the!expertise!level!for!each!of!the!numbers!in!their!task!that!they!hold!in! memory!by!a!random!number!between!0!and!1.!This!represents!them!carrying!out!the!task!and! becoming!more!expert!in!those!areas.!They!!share!some!information!relating!to!their!task! with!other!random!agents!to!allow!them!to!update!their!TM.!!
FindingsTable)3:)Descriptive)statistics)and)correlations)M)Notes:)n=200,)*p
Discussion) As! described! in! the! theoretical! framework! the! behaviour! of! teams! is! likely! to! vary! with! different! knowledge! structures! and! the! extent! to! which! the! initial! knowledge! in! a! team! overlaps!is!one!area!that!has!been!addressed!in!previous!studies!(Ancona!and!Caldwell,!1992,! Austin,! 2003,! Baumann! and! Bonner,! 2004,! Gupta! and! Hollingshead,! 2010,! Lewis,! 2004,! Hollingshead,!2000,!Hollingshead,!2001,!Levesque!et!al.,!2001,!Littlepage!et!al.,!2008,!Wegner,! 1995).! ,! the! initial! development! of! the! TMS! is! likely! to! have! an! influence! on! the! performance! of! the! team! (Akgun! et! al.,! 2005,! Espinosa! et! al.,! 2007,! Lewis,! 2004,! Liang! et! al.,! 1995).!!This!model!introduced!the!dichotomous!parameters!of!low!and!high!initial!differentiation!and! the!presence!of!an!initial!TMS!or!not.!The!hypotheses!presented!for!this!model!predicted!that! the! impact! of! initial! differentiation! and! initial! TMS! on! performance,! differentiation! and! TMS! accuracy!will!be!moderated!by!the!XP!factors!of!work!mode!and!task!size.!The!results!showed! that!the!hypotheses!were!partially!supported.!!In!support!of!a!number!of!studies!(Ancona!and!Caldwell,!1992,!Gupta!and!Hollingshead,!2010,! SmithZJentsch!et!al.,!2009)!the!results!of!this!model!showed!that!low!initial!differentiation!had! a! more! positive! effect! on! performance! than! high! initial! differentiation.! This! advantage! was! stronger!for!solo!programming!than!for!pair!programming!demonstrating!a!moderation!effect.! This! is! in! contradiction! to! Lewis! (Lewis,! 2004)! who! found! that! teams! with! initially! diverse! knowledge! produced! higher! team! performance.! In! addition,! as! theory! predicts,! results! show! that! the! existence! of! an! initial! TMS! gives! higher! performance! for! all! working! conditions! apart! from!pair!programming!with!small!tasks!when!there!is!no!significant!difference.!So,!according! to! the! model,! XP! factors! compensate! for! the! advantage! that! the! initial! TMS! bestows! on! the! team,! but! only! if! pair! programming! is! used! in! conjunction! with! small! tasks.! Hypothesis! 4! is! supported! and! hypothesis! 3! is! partially! supported! as! both! pair! programming! and! small! tasks! have!to!be!in!use!before!the!existence!of!an!initial!TMS!is!not!significant.!!The! positive! effect! of! low! initial! differentiation! can! be! explained! by! the! functioning! of! the! model.! ! Performance! is! measured! as! the! ratio! between! actual! performance! and! optimum! performance.! As! each! of! the! agents! has! identical! knowledge! the! potential! detriment! from! allocating! tasks! to! the! wrong! agent! is! reduced.! The! advantage! from! the! presence! of! an! initial! TMS! is! clear! as! tasks! are! directed! to! the! most! qualified! agent! for! the! task! from! the! outset,! ,! pair! programming! together! with! small! tasks! compensates! for! this! as! both! practices! bring! the! task! value! closer! to! the! optimum.! Pair! programming! does! this! by! pooling! the! resources!of!two!programmers,!and!small!tasks!by!focussing!the!allocation!of!tasks!to!the!most! qualified!agent.!!! 82!In! terms! of! the! theoretical! framework,! the! model! supports! the! theory! that! low! initial! differentiation! predicts! higher! performance! because! diversity! lowers! the! ability! of! a! team! to! cooperate!and!coordinate!(Ancona!and!Caldwell,!1992,!SmithZJentsch!et!al.,!2009).!,!pairing! programmers!with!similar!knowledge!was!found!to!improve!performance!(Bellini!et!al.,!2005),! which! may! explain! the! additional! advantage! that! pair! programming! had! over! solo! programming!for!low!initial!differentiation!in!the!model.!Agents! that! work! together! will! exchange! knowledge! that! differs.! In! the! case! of! low! differentiation! there! is! no! difference! in! agents'! knowledge,! ,! there! will! be! little! or! no! exchange! of! knowledge! and! each! will! retain! their! own! knowledge.! In! the! case! of! high! differentiation!as!agents!work!in!pairs!there!will!be!high!levels!of!exchange!of!knowledge!due! to!the!high!diversity,!resulting!in!a!flatter!knowledge!structure.!In!reality,!if!all!team!members! have! the! same! knowledge,! so! have! little! reason! to! exchange! knowledge,! low! initial! differentiation!reduces!the!interdependence!in!the!team.!For!high!initial!differentiation!there!is! high! interdependence! and! with! pair! programming! this! results! in! large! amounts! of! knowledge! sharing.!!For!pair!programming!TMS!accuracy!was!not!affected!by!initial!TMS!but!for!solo!conditions!the! presence! of! an! initial! TMS! ! reduced! TMS! accuracy! over! time.! ! The! former! is! not! a! surprise!as!the!elevated!sharing!of!knowledge!!includes!greater!TMS!accuracy!meaning!that! the!TMS!'gets!up!to!speed'!very!quickly!for!pair!programming!conditions.!The!initial!presence! of!a!complete!and!accurate!TMS!reducing!the!TMS!accuracy!over!time!for!solo!programming!is! more! difficult! to! explain! as! it! seems! counterintuitive.! It! is! possible! that! as! changes! to! knowledge! happen! in! the! team! it! is! more! difficult! for! agents! using! solo! programming! to! maintain! the! complete! accurate! TMS! than! if! they! were! building! the! TMS! from! scratch.! This! is! contrary! to! the! literature! (Akgun! et! al.,! 2005,! Espinosa! et! al.,! 2007,! Lewis,! 2004,! Liang! et! al.,! 1995)!which!states!that!groups!with!an!initial!TMS!will!have!higher!quality!TMSs!and!perform! better.! Hypothesis! 1! is! supported! and! hypothesis! 2! is! partially! supported! as! differentiation! over! time! is! unaffected! by! the! presence! of! an! initial! TMS,! but! there! is! an! inverse! relationship! between!initial!TMS!and!TMS!accuracy!for!work!mode.!In! pair! programming,! team! members! having! worked! together! before,! and! so! having! initial! knowledge! of! each! other,! is! unlikely! to! have! an! effect! on! the! accuracy! of! their! TMS! or! knowledge! diversity! over! time.! In! contrast,! for! new! pair! programmers,! homogenous! initial! knowledge!is!likely!to!have!an!effect!on!the!accuracy!of!TMS!and!the!diversity!of!knowledge!in! the!team,!increasing!them!both!to!a!greater!degree!over!time.!In! summary,! performance! was! increased! with! lower! initial! differentiation! and! an! initial! TMS,! ,! this! reliance! on! the! initial! TMS! was! reduced! by! XP! factors! to! a! degree.! For! pair! programming!initial!TMS!had!no!effect!on!TMS!accuracy!or!differentiation!over!time;!and!low! initial! differentiation! increased! both! TMS! accuracy! and! differentiation! over! time.! For! solo! programming!the!picture!is!a!little!different,!initial!TMS!and!initial!differentiation!had!no!effect! on!differentiation!over!time!and!they!both!had!the!effect!of!reducing!TMS!accuracy!over!time.!.
Summary
Each! agent! has! pairs! of! numbers! in! memory.! In! each! pair! one! number! represents! a! ‘chunk’! of! knowledge! and! the! other! represents! the! level! of! expertise! in! that! knowledge.! This! knowledge! can! grow! as! the! agent! learns! and! the! expertise! levels! can! increase! as! the! agent! gains! experience.! Each! agent’s! memory! ! holds! information! relating! to! the! knowledge! and! expertise! of! the! other! agents! in! the! simulation.! This! memory! represents! TM! and! this! can! ! develop! over! the! course! of! a! simulation! as! the! agent! learns! about! the! other! agents.! Each! iteration,! each! agent! is! given! a! task! consisting! of! numbers! representing! the! knowledge! required!to!complete!that!task.!Each!agent!values!their!task!in!relation!to!their!own!knowledge! and! expertise,! and! ! their! beliefs! about! the! knowledge! and! expertise! of! other! agents,! and! may!decide!to!offer!their!task!to!another!agent.!They!do!this!if!they!believe!that!the!agent!will! gain!more!team!value!doing!the!task!than!them.!Each!agent!!chooses!from!the!tasks,!if!any,! that!have!been!offered!and!decides!which!to!keep!and!reject!based!on!the!value!of!them!doing! each!task.!This!results!in!tasks!being!redistributed!based!on!not!only!knowledge!and!expertise,! but! ! beliefs! relating! to! other! agents’! knowledge! and! expertise.! After! task! redistribution! each!agent!increments!the!expertise!level!for!each!of!the!numbers!in!their!task!that!they!hold!in! memory!by!a!random!number!between!0!and!1.!This!represents!them!carrying!out!the!task!and! becoming!more!expert!in!those!areas.!They!!share!some!information!relating!to!their!task! with!other!random!agents!to!allow!them!to!update!their!TM.!!
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.