软件工程及软件方法学
-
分析模式可复用的对象模型(英)Martin Fowler著;樊东平,张路等译本书的作者MartinFowler是国际著名的OO专家,敏捷开发方法的创始人之一,现为ThoughtWorks公司的首席科学家,本书是作者的代表作之一,深受业界专业人士和广大读者的好评,经久不衰。本书讲述各种分析模式(即来自概念性业务模型的模式)和支持模式(即讲述如何使用分析模式的辅助性模式),把论述重点放在介绍面向对象分析和设计的最终结果:即模型本身。作者透过平实朴素的语言,将自己丰富的对象建模经验与读者分享,使读者可以马上采纳这些经验性模式。本书适合的读者范围非常广:面向对象的计算机分析人员和设计人员(尤其是那些参与系统分析的人员)、数据建模人员、编程人员以及专业的软件工程师都可以从本书中获得宝贵的知识和经验。“本书是对不断发展的模式文献的一个重要贡献。它捕捉来自不同领域的深奥的对象建模专业知识,形成一个模式目录。这些领域模式将有助于你解决不同领域中具有挑战性的建模问题。”:::ErichGamma“MartinFowler为我们给出答案,而不仅仅是一个可以找到这些答案的过程。在本书中,透过作者平实朴素的语言,你将找到自己下一个业务对象模型的重要内容。”:::WardCunningham“就像‘四人帮’在他们的经典著作《设计模式》中总结出了通用的设计模式,MartinFowler在这本让人期待已久的书中为我们总结出应用领域的诸多模式。本书是从事面向对象业务建模和业务过程重组工作的所有分析人员和设计人员的必备之书。”::DonaldG.FiresmithMartinFowler认识到面向对象研究团体需要一本超越传统方法学著作所包含的工具和技术的书,因此撰写了本书,重点介绍面向对象分析和设计的最终结果::模型本身。他将自己丰富的对象建模专业经验与读者分享,着眼于找出重复问题并把这些问题转换为可复用的模型。本书提供一个模式目录,涉及交易、测量、财务和组织内部关系等广泛领域。鉴于概念模式不能孤立存在,MartinFowler还提出一系列“支持模式”,这些支持模式讨论如何将概念模式转变为适合大型信息系统构架的软件。在介绍每种模式时,都讲述设计背后的缘由以及使用这种模式的规则。书中的示例包含有用模型的使用细节并进一步探讨了将会改进分析、建模和实现的复用技巧。
-
中文VISUAL FOXPRO精彩编程五十例王彬华,李建华编著本书精选五十个程序实例、运用简明的文字针对每一实例介绍如何建立一个VisualFoxPro程序、并讲解编写程序的步骤与方法。
-
软件测试技术概论上海艾微软件技术有限公司主编;古乐,史九林编著本书是一本比较全面地介绍软件测试方法的书籍,先介绍测试技术的发展历史和现状;然后,作为测试的一个基础,介绍了白盒测试、黑盒测试以及测试覆盖北等几个重要概念,并充分分析了业界在这几个概念方面的研究成果;之后从全流程测试的角度按动态测试和静态测试两个方面,分另介绍了单元测试、集成测试、系统则试、验收证和确认过程、需求测试和设计测试等内容。作为静态测试的一个重要手段,本书还对同行评审的概念和方法进行了阐述。最后,作者总结了测试的基本原则和一些好的实践经验。本书可以作为大学生本科高年级学生或研究生教材,也可以作为本科低年级学生学习的参考书。对于软件工程师和测试工程师业说,本书是一本很好的指导书。
-
Visual FoxPro 6.0程序设计基础盛苏伦主编本教材介绍了VFP 6.0的程序设计开发环境、VFP 6.0的基本元素、表与数据库、查询和视图、表单设计、建立报表与标签、菜单与工具栏设计和程序设计等内容。
-
数据结构杨秀金,张红梅编著本书系统介绍了各种数据结构的特点、存储结构及相关算法。书中采用C语言描述算法。主要内容包括:数据结构的基本概念、算法描述和算法分析初步;线性表、堆栈、队列、串、数组、树、图等结构:排序、查找和文件组织等。每章后面配有习题。多数章节给出了完整C语言源程序示例。第11章介绍了算法书写及实习步骤规范。最后一章介绍了面向对象方法C++语言实现数据结构的基本概念和程序实例。本书叙述清晰、深入浅出、注意实践,便于教学与实践。本书可作为高等院校计算机专业的教材,也可供从事计算机应用与工程工作的科技工作者自学参考。*为方便教学,本书配有电子教案,需要者可与出版社联系,免费提供。
-
数学建模梁国业,廖健平编著随着科学技术的进步,数学建模的思想和方法得到了越来越广泛地应用,本书系统介绍了数学建模的相关知识。主要内容包括:简单的数字模型、数学模型的基础知识、实验建模与MATLAB、数据似合与插值、模拟建模、离散模型、线性规划、非线性规划与动态规划、微分议程模型、微分方程组模型、决策论与对策论及其他模型,同时,本书在附录中还介绍了全国大学生数学建模竞赛试题竞选和美国大学生数学建模竞赛试题竞选。 本书语言通俗易懂、内容函盖面广,且实例丰富、实用性较强、既可作为大专院校数学建模课程的入门教材,也可作为各类科技、工程工作者的参考用书,还可作为数学建模爱好者的参考读物。
-
数据结构与算法分析魏宝刚等编著新世纪高等院校精品教材。本书旨在使学生全面理解算法和数据结构的概念,掌握各种数据结构与算法的实现方式,并且比较不同数据结构和算法的特点。
-
软件过程管理广东省教学教材研究室编本书从软件工程、Project2000、Visual SourceSafe三个方面出发,系统阐述了什么是项目管理、为什么要进行项目管理以及如何进行项目管理。
-
UML和模式应用(美)Craig Larman著本书是当今最畅销的介绍面向对象的分析/设计、迭代开发和UML的书籍。本书的目的是帮助开发人员或学生掌握关于面向对象的分析和设计的核心原理和最佳实践,并将它们真正应用到软件设计中去。本书的作者是颇有声望的对象技术和迭代方法的领军人物。本书在第一版的基础上做了全面的修订,增加了新的案例研究,更新了关于模式、用况、统一过程、架构分析等的探讨。前言PrefaceThankyouforreadingthisbook!Thisisapracticalintroductiontoobject-orientedanalysisanddesign(OOA/D),andtorelatedaspectsofiterativedevelopment.IamgratefulthatthefirsteditionwasreceivedasapopularintroductiontoOOA/Dthroughouttheworld,translatedintomanylanguages.Therefore,thissecondeditionbuildsuponandrefines-ratherthanreplaces-thecontentinthefirst.Iwanttosincerelythankallthereadersofthefirstedition.Hereishowthebookwillbenefityou.Designrobustandmaintainableobjectsystems.First,theuseofobjecttechnologyhasproliferatedinthedevelopmentofsoftware,andmasteryofOOA/Discriticalforyoutocreaterobustandmaintainableobjectsystems.Followaroadmapthroughrequirements,analysis,design,andcoding.Second,ifyouarenewtoOOA/D,youareunderstandablychallengedabouthowtoproceedthroughthiscomplexsubject;thisbookpresentsawell-definedroadmap-theUnifiedProcess-sothatyoucanmoveinastep-by-stepprocessfromrequirementstocode.UsetheUMLtoillustrateanalysisanddesignmodels.Third,theUnifiedModelingLanguage(UML)hasemergedasthestandardnotationformodeling;soitisusefulforyoutobeconversantinit.ThisbookteachestheskillsofOOA/DusingtheUMLnotation.Improvedesignsbyapplyingthe"gang-of-four"andGRASPdesignpatterns.Fourth,designpatternscommunicatethe"bestpractice"idiomsandsolutionsthatobject-orienteddesignexpertsapplyinordertocreatesystems.Inthisbookyouwilllearntoapplydesignpatterns,includingthepopular"gang-of-four"patterns,andtheGRASPpatternswhichcommunicatefundamentalprinciplesofresponsibilityassignmentinobjectdesign.Learningandapplyingpatternswillaccelerateyourmasteryofanalysisanddesign.Learnefficientlybyfollowingarefinedpresentation.Fifth,thestructureandemphasisinthisbookisbasedonyearsofexperienceintrainingandmentoringthousandsofpeopleintheartofOOA/D.Itreflectsthatexperiencebyprovidingarefined,proven,andefficientapproachtolearningthesubjectsoyourinvestmentinreadingandlearningisoptimized.Learnfromarealisticexercise.Sixth,itexhaustivelyexaminesasinglecasestudy-torealisticallyillustratetheentireOOA/Dprocess,andgoesdeeplyintothornydetailsoftheproblem;itisarealisticexercise.Translatetocode.Seventh,itshowshowtomapobjectdesignartifactstocodeinJava.Designalayeredarchitecture.Eighth,itexplainshowtodesignalayeredarchitectureandrelatethegraphicaluserinterfacelayertodomainandtechnicalserviceslayers.Designaframework.Finally,itshowsyouhowtodesignanobject-orientedframeworkandappliesthistothecreationofaframeworkforpersistentstorageinadatabase.ObjectivesTheoverarchingobjectiveisthis:Helpstudentsanddeveloperscreateobjectdesignsthroughtheapplicationofasetofexplainableprinciplesandheuristics.Bystudyingandapplyingtheinformationandtechniquespresentedhere,youwillbecomemoreadeptatunderstandingaproblemintermsofitsprocessesandconcepts,anddesigningasolidsolutionusingobjects.IntendedAudienceThisbookisanintroductiontoOOA/D,relatedrequirementsanalysis,andtoiterativedevelopmentwiththeUnifiedProcessasasampleprocess;itisnotmeantasanadvancedtext.Itisforthefollowingaudience:Developersandstudentswithexperienceinanobject-orientedprogramminglanguage,butwhoarenew—orrelativelynew—toobject-orientedanalysisanddesign.Studentsincomputerscienceorsoftwareengineeringcoursesstudyingobjecttechnology.ThosewithsomefamiliarityinOOA/DwhowanttolearntheUMLnotation,applypatterns,orwhowanttosharpenanddeepentheiranalysisanddesignskills.PrerequisitesSomeprerequisiteknowledgeisassumed—andnecessary—tobenefitfromthisbook:Knowledgeandexperienceinanobject-orientedprogramminglanguagesuchasJava,C#,C++,orSmalltalk.Knowledgeoffundamentalobjecttechnologyconcepts,suchasclass,instance,interface,polymorphism,encapsulation,interfaces,andinheritance.Fundamentalobjecttechnologyconceptsarenotdefined.JavaExamplesIngeneral,thebookpresentscodeexamplesinJavaordiscussesJavaimplementations,duetoitswidespreadfamiliarity.However,theideaspresentedareapplicabletomost—ifnotall—object-orientedprogramminglanguages.BookOrganizationTheoverallstrategyintheorganizationofthisbookisthatanalysisanddesigntopicsareintroducedinanordersimilartothatofasoftwaredevelopmentprojectrunningacrossan"inception"phase(aUnifiedProcessterm)followedbythreeiterations.Theinceptionphasechaptersintroducethebasicsofrequirementsanalysis.Iteration1introducesfundamentalOOA/Dandhowtoassignresponsibilitiestoobjects.Iteration2focusesonobjectdesign,especiallyonintroducingsomehigh-use"designpatterns."Iteration3introducesavarietyofsubjects,suchasarchitecturalanalysisandframeworkdesign.Web-RelatedResourcesPleaseseewww.craiglarman.comforarticlesrelatedtoobjecttechnology,patterns,andprocess.Someinstructorresourcescanbefoundatwww.phptr.com/larmanEnhancementstotheFirstEditionWhileretainingthesamecoreasthefirstedition,thesecondisrefinedinmanyways,including:UsecasesareupdatedtofollowtheverypopularapproachofCockburn1.Thewell-knownUnifiedProcess(UP)isusedastheexampleiterativeprocesswithinwhichtointroduceOOA/D.Thus,allartifactsarenamedaccordingtoUPterms,suchasDomainModel.Newrequirementsinthecasestudy,leadingtoathirditeration.Updatedtreatmentofdesignpatterns.Introductiontoarchitecturalanalysis.IntroductionofProtectedVariationsasaGRASPpattern.A5/5balancebetweensequenceandcollaborationdiagrams.ThelatestUMLnotationupdates.DiscussionofsomepracticalaspectsofdrawingusingwhiteboardsorUMLCASEtools.AbouttheAuthorCraigLarmanservesasDirectorofProcessforValtech,aninternationalconsultingcompanywithdivisionsinEurope,Asia,andNorthAmerica,specializingine-businesssystemsdevelopment,objecttechnologies,anditerativedevelopmentwiththeUnifiedProcess.Sincethemid198s,Craighashelpedthousandsofdeveloperstoapplyobject-orientedprogramming,analysis,anddesign,andassistedorganizationsadoptiterativedevelopmentpractices.Afterafailedcareerasawanderingstreetmusician,hebuiltsystemsinAPL,PL/I,andCICSinthe197s.Startingintheearly198s-afterafullrecovery-hebecameinterestedinartificialintelligence(havinglittleofhisown),naturallanguageprocessing,andknowledgerepresentation,andbuiltknowledgesystemswithLispmachines,Lisp,Prolog,andSmalltalk.Heplaysbadleadguitarinhispart-timeband,theChangingRequirements(itusedtobecalledtheRequirements,butsomebandmemberschanged...).HeholdsaB.Sc.andM.Sc.incomputersciencefromSimonFraserUniversityinVancouver,Canada.Craigcanbereachedatclarman@acm.organdwww.craiglarman.com
-
现代软件工程成奋华主编高职高专计算机专业规划教材。本书分为9章,讲述了软件的需求分析、软件的系统设计、面向对象设计方法、软件编码、软件测试、软件维护、软件管理等内容。