Advances in COMPUTERS EmergingTechnologies EDITEDBY MARVIN V. ZELKOWITZ DepartmentofComputerScience UniversityofMaryland CollegePark,Maryland VOLUME73 Amsterdam•Boston•Heidelberg•London•NewYork•Oxford Paris•SanDiego•SanFrancisco•Singapore•Sydney•Tokyo ACADEMIC AcademicPressisanimprintofElsevier PRESS AcademicPressisanimprintofElsevier 84Theobald’sRoad,LondonWC1X8RR,UK Radarweg29,POBox211,1000AEAmsterdam,TheNetherlands 30CorporateDrive,Suite400,Burlington,MA01803,USA 525BStreet,Suite1900,SanDiego,CA92101-4495,USA Firstedition2008 Copyright©2008ElsevierInc.Allrightsreserved Nopartofthispublicationmaybereproduced,storedinaretrievalsystem ortransmittedinanyformorbyanymeanselectronic,mechanical,photocopying, recordingorotherwisewithoutthepriorwrittenpermissionofthepublisher. PermissionsmaybesoughtdirectlyfromElsevier’sScience&TechnologyRights DepartmentinOxford,UK:phone(+44)(0)1865843830;fax(+44)(0)1865853333; email:permissions@elsevier.com.Alternativelyyoucansubmityourrequestonlineby visitingtheElsevierwebsiteathttp://elsevier.com/locate/permissions,andselecting ObtainingpermissiontouseElseviermaterial. Notice Noresponsibilityisassumedbythepublisherforanyinjuryand/ordamagetopersons orpropertyasamatterofproductsliability,negligenceorotherwise,orfromanyuse oroperationofanymethods,products,instructionsorideascontainedinthematerialherein. ISBN:978-0-12-374425-8 ISSN:0065-2458 ForinformationonallAcademicPresspublications visitourwebsiteatelsevierdirect.com PrintedandboundinUSA 08 09 10 11 12 10 9 8 7 6 5 4 3 2 1 Contributors AnnelieseAmschlerAndrewsisProfessorandChairoftheDepartmentofComputer ScienceattheUniversityofDenver.Hercurrentresearchinterestsincludesoftware testing,softwaredesign,softwaremaintenanceandempiricalsoftwareengineering. Shehaspublishedover150researchpapersinrefereedsoftwareengineeringjournals andconferences.Sheservesintheeditorialboardoffivesoftwareengineeringjour- nalsandinmanyprogramcommitteesforconferences.ShereceivedaPhDdegreein ComputerSciencefromDukeUniversity. EloisaBentivegnaisaPh.D.studentinphysics(withaminorinhigh-performance computing)atthePennsylvaniaStateUniversity,StateCollege.ShereceivedanM.Sc. inTheoreticalPhysicssummacumlaudefromUniversityofCatania,Italy,in2002. Herresearchareasincludenumericalrelativityandcosmology.Shewasappointedas aJohnArchibaldWheelerFellowin2006andhasbeenanEberlyCollegeofScience DuncanFellowsince2003. RalphF.Field has25yearsofexperienceineducationandprogrammanagement. HehasbeenworkingfortheUniversityofMarylandUniversityCollege’sGraduate SchoolofManagementandTechnologysince1995,whereheisanassociateprofes- soratboththemastersanddoctorallevel.AtUniversityCollege,heistheProgram Director for Not-for-Profit Management, Naval Operations and National Security, ArmySustainingBaseManagement,JointMilitaryStrategy,PlanningandDecision MakingandAirandSpaceStrategicStudies.Hehasperformedextensivefieldwork in Botswana,Africa, as a Peace Corp. volunteer. He holds a PhD in Development Sociology. A.R.Hursonisthedepartmentchairandprofessorofthecomputersciencedepart- ment at the university of Missouri-Rolla. Before his current appointment, he was a Computer Science and Engineering professor at The Pennsylvania State Univer- sity. His research for the past 25 years has been directed towards the design and ix x CONTRIBUTORS analysis of general as well as special-purpose computer architectures. His research hasbeensupportedbyNSF,NCRCorp.,DARPA,IBM,LockheedMartin,ONRand PennStateUniversity.Hehaspublishedover250technicalpapersinareasincluding database systems, multi-databases, global information-sharing processing, applica- tion of mobile-agent technology and object-oriented databases, Mobile-computing environmentandcomputerarchitectureparallelanddistributedprocessing.Heisthe co-authoroftheIEEETutorialsonParallelArchitecturesforDatabaseSystems,Multi- database Systems:AnAdvanced Solution for Global Information Sharing, Parallel Architectures for Data/Knowledge Base Systems, and Scheduling and Load Balan- cinginParallelandDistributedSystems. HeservedasamemberoftheIEEEComputerSocietyPressEditorialBoard,anIEEE distinguishedspeakerandeditorofIEEEtransactionsoncomputersandIEEE/ACM ComputerSciencesAccreditationBoard.Currently,heisservingasanACMlecturer, editorofJournalofPervasiveandMobileComputingandeditorofTheCSIJournal ofComputerScienceandEngineering. PeterKazanzidesreceivedtheB.Sc.,M.Sc.andPh.D.degreesinelectricalengineer- ing from Brown University in 1983, 1985 and 1988, respectively. His dissertation focusedonforcecontrolandmulti-processorsystemsforrobotics.Hebeganworkon surgicalroboticsinMarch1989asapostdoctoralresearcherattheIBMT.J.Watson ResearchCenterwithDr.RussellTaylor.Dr.Kazanzidesco-foundedIntegratedSur- gicalSystems(ISS)inNovember1990tocommercializetherobotichipreplacement research performed at IBM and the University of California, Davis.As Director of RoboticsandSoftware,hewasresponsibleforthedesign,implementation,validation andsupportoftheROBODOC®hardwareandsoftware.Dr.Kazanzidesjoinedthe Engineering Research Center for Computer-Integrated Surgical Systems andTech- nology(CISSTERC)atJohnsHopkinsUniversityinDecember2002.Hecurrently holds an appointment as an Assistant Research Professor of Computer Science at JohnsHopkinsUniversity. AlirezaMahdianiscurrentlyasecond-yearPhDstudentattheDepartmentofCom- puter Science at the University of Denver. His current research interests include software testing, software design and software maintenance. He received his BS degreeinComputerEngineeringfromSharifUniversityofTechnology,Iran. David F. Rico has been a systems engineer in support of the NSA, NRO, NASA, DARPA, DISA, SPAWAR, USAF, NAVAIR, CECOM and MICOM for 20+ years. He worked on NASA’s $20 billion space station in the 1980s, he worked for a CONTRIBUTORS xi $40billionJapanesecorporationinTokyointheearly1990sandheworkedonU.S. Navy fighters such as the F-18, F-14 and many others. He’s been an international keynotespeaker,haspublishednumerousarticlesandhascontributedtofivebooks oncomputerscience.Heholdsabachelor’sdegreeincomputerscience,amaster’s degreeinsoftwareengineeringandadoctoraldegreeininformationtechnology. George Roussos holds a first degree in Pure Mathematics from the University of Athens,anMScinNumericalAnalysisandComputingfromtheUniversityofMan- chesterandaPhDinDistributedScientificComputingfromImperialCollege,where hisstudiesweresupportedbyaMarieCurieFellowship.HeiscurrentlyaSeniorLec- turerattheSchoolofComputerScienceandInformationSystems,BirkbeckCollege, University of London, where he leads the pervasive computing lab. Before joining BirkbeckCollegeasalecturer,heworkedastheResearchandDevelopmentManager foramulti-nationalinformationtechnologycorporationinAthens,Greece,wherehe was responsible for the strategic development of new IT products in the areas of knowledge management and mobile internet; as an Internet security officer for the MinistryofDefence,Athens,wherehedesignedtheHellenicarmedforcesInternet exchangeanddomainnamesystems;andasaresearchfellowforImperialCollege, London,whereheconductedresearchindistributedsystems.Heiscurrentlyinvesti- gatingtheeffectsofsocialactivityonsystemarchitecturesandexploringmechanisms tosupportnavigationandfindability.HeisamemberoftheACM,SIGMOBILE,the IEEE,theIEEECommunicationsandtheIEEEComputerSociety. HasanH.Sayani’sinterestslieininformationsystems,developmentofinformation systems,lifecyclemethodsandtoolsandsemanticdatabasemanagementsystems.He hastaughtattheUniversityofMaryland–CollegeParkintheInformationSystems Management program. He also co-founded a commercial organization which built systemsforvariouscommercialandgovernmentalorganizations.Hehasparticipated invariousprofessional(e.g.,IEEE,ACM,CASE)andstandardizationorganizations (e.g., ANS, CODASYL, DoD, CALS). He holds a BSE, MSE and PhD from the UniversityofMichigan. RussellH.Taylor receivedhisPh.D.inComputerSciencefromStanfordin1976. HejoinedIBMResearchin1976,wherehedevelopedtheAMLrobotlanguageand managedtheAutomationTechnologyDepartmentand(later)theComputer-Assisted SurgeryGroupbeforemovingin1995toJohnsHopkins,whereheisaProfessorof Computer Science, with joint appointments in Mechanical Engineering, Radiology andSurgery,andisDirectoroftheNSFEngineeringResearchCenterforComputer- Integrated Surgical Systems and Technology. He is the author of more than 200 xii CONTRIBUTORS refereedpublications,aFellowoftheIEEEandAIMBandarecipientoftheMaurice Müllerawardforexcellenceincomputer-assistedorthopaedicsurgery. MarkWenstromreceivedhisB.S.degree(summacumlaude)incomputerscience andengineeringfromBucknellUniversity,Lewisburg,in2005.HereceivedhisM.E. degreeincomputerscienceandengineeringfromThePennsylvaniaStateUniversity, StateCollege,onMay2007. Preface This is volume 73 of theAdvances in Computers. This series, which began pub- lication in 1960, is the oldest continuously published anthology that chronicles the everchanginginformationtechnologyfield.Inthesevolumes,wepublishfrom5to7 chaptersthatcoverthelatestchangestothedesign,development,useandimplications ofcomputertechnologyonsocietytoday.Inthiscurrentvolume,subtitled‘Emerging Technologies’,wediscussseveralnewadvancesincomputersoftwaregenerationas wellasdescribenewapplicationsofthosecomputers. Inthefirstchapter,‘Historyofcomputers,electroniccommerceandagilemeth- ods’,D.F.Rico,H.H.SayaniandR.F.Fieldgiveanoverviewofvarioussoftware developmenttechnologiesthathavebeenappliedduringthepast40years,withthe goalofimprovingthesoftwaredevelopmentprocess.Thisincludesvariousmethods suchasstructureddevelopmentmethods,reviews,object-orientedmethodsandrapid development technologies. In this latter category, they spend the last third of their chapterreviewingthecurrentdevelopmentandinterestinagilemethodsasameans torapidlyproduceeffectiveprograms. Anneliese Andrews and Alireza Mahdian in Chapter 2, ‘Testing with software designs’,exploreimplicationsofUMLasanemergingdesignnotationforsoftware. As they state in their chapter ‘Originally, designs in UML have been used to test implementations against their design artifacts, but there are also testing techniques thattestthedesignartifactsdirectly’.TheydiscusstechniqueswheredesignsinUML canbeusedtotesttheunderlyingimplementation. Chapter3‘Balancingtransparency,efficiencyandsecurityinpervasivesystems’, byMarkWenstrom,EloisaBentivegnaandAliHursondealwiththeemergingcon- cept of pervasive computing and its impact on resource management and security. Thebasicgoalsofpervasivecomputingarethatcomputertechnologyisseamlessly availablewheneverandwherevertheuserissituated.Butthisgoesagainstthesecurity goalsofisolatingusersfrompotentiallymaliciousattacksbyunauthorizedindivid- uals.Similarly,resourcesarenotuniformlydistributedthroughoutanenvironment, althoughcomputingresourcesareexpectedtobeavailablewhenneeded.Inthischap- ter,theauthorsdiscusshowthisgoaloftransparencyofcomputersaffectsefficiency ofthesystemaswellassecurityconcerns. xiii xiv PREFACE RFID, or Radio Frequency Identification, is coming to a store near you.This is the technology that cheaply tags products with unique identifiers that only need to pass near a reading device rather than specifically being read by a scanner. With this technology, products can be easily traced through the supply chain from the manufacturer to the user. George Roussos in Chapter 4, ‘Computing with RFID: drivers,technologyandimplications’,discussesthistechnology,howsupplychains workinindustry,andbrieflygivesanoverviewofthebasictechnologyofitsoperation. Inadditiontochangestoyourlocalsupermarketdescribedintheprecedingchap- ter, robotic research will have an important impact on other aspects of everyday life. One area of growing use of robot control is in medicine. In the final chapter, Dr.RussellTaylorandDr.PeterKazanzidesdiscusstheuseofrobottechnologyin medicine,specificallyComputer-IntegratedInterventionalMedicine(CIIM),where roboticcontroltakesoversomeoralloftheaspectsofsurgery. Ihopeyoufoundthisvolumetobeinteresting.Iamalwayslookingfornewand different chapters and volume themes to use for future volumes. If you know of a topicthathasnotbeencoveredrecentlyorareinterestedinwritingsuchachapter, pleaseletmeknow.Iamalsoalwayslookingforqualifiedauthors.Ifinterested,Ican becontactedatmvz@cs.umd.edu.IhopeyoulikethesevolumesandIlookforward toproducingthenextoneinthislong-runningseries. MarvinZelkowitz UniversityofMaryland CollegePark,Maryland History of Computers, Electronic Commerce and Agile Methods DAVID F. RICO HASAN H. SAYANI Graduate School of Management andTechnology University of Maryland University College RALPH F. FIELD Graduate School of Management andTechnology University of Maryland University College Abstract Thepurposeofthischapteristopresentaliteraturereviewrelevanttoastudy ofusingagilemethodstomanagethedevelopmentofInternetwebsitesandtheir subsequentquality.Thischapterplaceswebsitequalitywithinthecontextofthe $2.4 trillion U.S. electronic commerce industry. Thus, this chapter provides a history of electronic computers, electronic commerce, software methods, soft- warequalitymetrics,agilemethodsandstudiesonagilemethods.Noneofthese histories are without controversy. For instance, some scholars begin the study oftheelectroniccomputerbymentioningtheemergenceoftheSumeriantext, Hammurabi code or the abacus. We, however, will align our history with the emergenceofthemodernelectroniccomputeratthebeginningofWorldWarII. Thehistoryofelectroniccommercealsohaspoorlydefinedbeginnings.Some studiesofelectroniccommercebeginwiththewidespreaduseoftheInternetin theearly1990s.However,electroniccommercecannotbeappreciatedwithout establishingadeepercontext.Fewscholarlystudies,ifany,havebeenperformed onagilemethods,whichisthebasicpurposeofthisliteraturereview.Thatis, toestablishthecontexttoconductscholarlyresearchwithinthefieldsofagile methodsandelectroniccommerce. 1 ADVANCESINCOMPUTERS,VOL.73 Copyright©2008ElsevierInc. ISSN:0065-2458/DOI:10.1016/S0065-2458(08)00401-4 Allrightsreserved. 2 D.F.RICOETAL. 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. HistoryofComputersandSoftware . . . . . . . . . . . . . . . . . . . . 4 2.1. ElectronicComputers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.2. ProgrammingLanguages . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.3. OperatingSystems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.4. PackagedSoftware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.5. InternetandWWW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3. HistoryofElectronicCommerce . . . . . . . . . . . . . . . . . . . . . 9 3.1. ElectronicCommerce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.2. Second-GenerationElectronicCommerce . . . . . . . . . . . . . . . . . . 9 3.3. Third-GenerationElectronicCommerce . . . . . . . . . . . . . . . . . . . 11 3.4. Fourth-GenerationElectronicCommerce. . . . . . . . . . . . . . . . . . . 11 3.5. Mid-Fourth-GenerationElectronicCommerce . . . . . . . . . . . . . . . . 11 4. HistoryofSoftwareMethods . . . . . . . . . . . . . . . . . . . . . . . 13 4.1. DatabaseDesign. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 4.2. AutomaticProgramming . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 4.3. SoftwareProjectManagement . . . . . . . . . . . . . . . . . . . . . . . . 16 4.4. EarlyUserInvolvement . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 4.5. StructuredMethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 4.6. FormalMethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 4.7. SoftwareLifeCycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 4.8. SoftwareReviews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 4.9. Object-OrientedMethods . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 4.10. SoftwareTesting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 4.11. SoftwareEnvironments . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 4.12. SoftwareQualityAssurance. . . . . . . . . . . . . . . . . . . . . . . . . . 20 4.13. SoftwareProcesses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 4.14. RapidDevelopment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 4.15. SoftwareReuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 4.16. SoftwareArchitecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 4.17. AgileMethods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 5. HistoryofSoftwareQualityMeasurement . . . . . . . . . . . . . . . . 24 5.1. SoftwareSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 5.2. SoftwareErrors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 5.3. SoftwareAttributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 5.4. StaticDefectModels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 5.5. SoftwareComplexity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27