资源预览内容
第1页 / 共61页
第2页 / 共61页
第3页 / 共61页
第4页 / 共61页
第5页 / 共61页
第6页 / 共61页
第7页 / 共61页
第8页 / 共61页
第9页 / 共61页
第10页 / 共61页
亲,该文档总共61页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
2 Systems Analysis and Design in a Changing World, Fourth Edition1敏捷建模2Learning ObjectivesuExplain the purpose and various phases of the systems development life cycle (SDLC)uExplain when to use an adaptive approach to the SDLC in place of a more predictive traditional SDLCuExplain the differences between a model, a tool, a technique, and a methodologyuDescribe the two overall approaches used to develop information systems: the traditional method and the object-oriented method2敏捷建模2Learning Objectives (continued)uDescribe some of the variations of the systems development life cycle (SDLC)uDescribe the key features of current trends in systems development: the Unified Process (UP), Extreme Programming (XP), Agile Modeling, and ScrumuExplain how automated tools are used in system development敏捷建模3敏捷建模2OverviewuSystem development projectlPlanned undertaking with fixed beginning and endlProduces desired result or product lCan be a large job with thousands of hours of effort or a small one-month projectuSuccessful development projectlProvides a detailed plan to followlOrganized, methodical sequence of tasks and activitieslProduces reliable, robust, and efficient system4敏捷建模2The Systems Development Lifecycle (SDLC)uSystems development life cycle (SDLC)lProvides overall framework for managing systems development processuTwo main approaches to SDLClPredictive approach assumes project can be planned out in advancelAdaptive approach more flexible, assumes project cannot be planned out in advanceuAll projects use some variation of SDLC5敏捷建模2Choosing the Predictive vs. Adaptive Approach to the SDLC (Figure 2-1)6敏捷建模2Traditional Predictive Approach to the SDLCuProject planning initiate, ensure feasibility, plan schedule, obtain approval for projectuAnalysis understand business needs and processing requirementsuDesign define solution system based on requirements and analysis decisionsuImplementation construct, test, train users, and install new systemuSupport keep system running and improve理解待解决的业务及定义业务需求开发程序结构和算法7敏捷建模2Information System Development Phases8敏捷建模2SDLC and Problem SolvinguSimilar to problem-solving approach in Chapter 1lOrganization recognizes problem (project planning)lProject team investigates, understands problem and solution requirements (analysis)lSolution is specified in detail (design)lSystem that solves problem is built and installed (implementation)lSystem used, maintained, and enhanced to continue to provide intended benefits (support)9敏捷建模2“Waterfall” Approach to the SDLC10敏捷建模21. 瀑布模型 ( (Waterfall Model) )可行性研究与计划可行性研究与计划需求分析需求分析设计设计编码编码运行维护运行维护测试测试定义定义阶段阶段开开发发阶阶段段维护阶段维护阶段11敏捷建模2Modified Waterfall Approachwith Overlapping Phases (Figure 2-5)12敏捷建模2Newer Adaptive Approaches to the SDLCuBased on spiral modellProject cycles through development activities over and over until project is completelPrototype created by end of each cyclelFocuses on mitigating riskuIteration Work activities are repeated lEach iteration refines previous resultlApproach assumes no one gets it right the first timelThere are a series of mini projects for each iteration13敏捷建模2The Spiral Life Cycle Model (Figure 2-6)14敏捷建模2Iteration of System Development Activities(Figure 2-7)15敏捷建模2采用原型模型的软件生存周期分析定义分析定义系统需求系统需求生成生成原型原型系统系统设计设计程序程序设计设计编码编码测试测试运运 行行和维护和维护原型化原型化含原型化的含原型化的软件生存期软件生存期16敏捷建模2建造建造/ /修改修改 原型原型用户测试用户测试运行原型运行原型 听取用听取用 户意见户意见原型范型原型范型原型范型原型范型17敏捷建模2螺旋模型风险风险分析分析工程工程实施实施用户通信用户通信用户用户评估评估产品维护项目产品维护项目产品维护项目产品维护项目产品增强项目产品增强项目产品增强项目产品增强项目新产品开发项目新产品开发项目新产品开发项目新产品开发项目概念开发项目概念开发项目概念开发项目概念开发项目计划计划计划计划建造及发布建造及发布建造及发布建造及发布18敏捷建模2Activities of Each SDLC PhaseuPredictive or adaptive approach use SDLCuActivities of each “phase” are similaruPhases are not always sequentialuPhases can overlapuActivities across phases can be done within an iteration19敏捷建模2Activities of Planning Phase of SDLCuDefine business problem and scopeuProduce detailed project schedule uConfirm project feasibility lEconomic, organizational, technical, resource, and scheduleuStaff the project (resource management)uLaunch project official announcement准确定义业务及解决方案的范围20敏捷建模2Activities of Analysis Phase of SDLCuGather information to learn problem domainuDefine system requirementsuBuild prototypes for discovery of requirementsuPrioritize requirementsuGenerate and evaluate alternativesuReview recommendations with management了解客户并详述需求21敏捷建模2Activities of Design Phase of SDLCuDesign and integrate the networkuDesign the application architectureuDesign the user interfacesuDesign the system interfacesuDesign and integrate the databaseuPrototype for design detailsuDesign and integrate system controls22敏捷建模2Activities of Implementation Phase of SDLCuConstruct software componentsuVerify and test uConvert datauTrain users and document the systemuInstall the system23敏捷建模2Activities of Support Phase of SDLCuMaintain systemlSmall patches, repairs, and updatesuEnhance systemlSmall upgrades or enhancements to expand system capabilitieslLarger enhancements may require separate development projectuSupport userslHelp desk and/or support team24敏捷建模2Methodologies and ModelsuMethodologieslComprehensive guidelines to follow for completing every SDLC activitylCollection of models, tools, and techniquesuModelslRepresentation of an important aspect of real world, but not same as real thinglAbstraction used to separate out aspectlDiagrams and chartslProject planning and budgeting aids25敏捷建模2Some Models Used in System Development26敏捷建模2Tools and TechniquesuToolslSoftware support that helps create models or other required project components lRange from simple drawing programs to complex CASE tools to project management softwareuTechniqueslCollection of guidelines that help analysts complete a system development activity or tasklCan be step-by-step instructions or just general advice27敏捷建模2Some Tools Used in System Development28敏捷建模2Some Techniques Used in System Development 29敏捷建模2Relationships Among Components of a Methodology30敏捷建模2Two Approaches to System DevelopmentuTraditional approach lAlso called structured system developmentlStructured analysis and design technique (SADT)lIncludes information engineering (IE)uObject-oriented approachlAlso called OOA, OOD, and OOPlViews information system as collection of interacting objects that work together to accomplish tasks31敏捷建模2Traditional ApproachuStructured programminglImproves computer program qualitylAllows other programmers to easily read and modify codelEach program module has one beginning and one endinglThree programming constructs (sequence, decision, repetition)32敏捷建模2Three Structured Programming Constructs33敏捷建模2Top-Down ProgramminguDivides complex programs into hierarchy of modulesuThe module at top controls execution by “calling” lower level modulesuModular programming lSimilar to top-down programming uOne program calls other programs to work together as single system34敏捷建模2Top-Down or Modular Programming35敏捷建模2Structured DesignuTechnique developed to provide design guidelines lWhat set of programs should belWhat program should accomplishlHow programs should be organized into a hierarchyuModules are shown with structure chartuMain principle of program moduleslLoosely coupled module is independent of other moduleslHighly cohesive module has one clear task36敏捷建模2Structure Chart Created Using Structured Design Technique37敏捷建模2Structured AnalysisuDefine what system needs to do (processing requirements)uDefine data system needs to store and use (data requirements)uDefine inputs and outputsuDefine how functions work together to accomplish tasksuData flow diagrams (DFD) and entity relationship diagrams (ERD) show results of structured analysis38敏捷建模2Data Flow Diagram (DFD) Created Using Structured Analysis Technique (Figure 2-15) 39敏捷建模2Entity-Relationship Diagram (ERD) Created Using Structured Analysis Technique40敏捷建模2Structured Analysis Leads to Structured Design and Structured Programming (Figure 2-17)41敏捷建模2Information Engineering (IE)uRefinement to structured developmentuMethodology with strategic planning, data modeling, automated tools focusuMore rigorous and complete than SADTuIndustry merged key concepts from structured development and information engineering approaches into traditional approach42敏捷建模2Object-Oriented ApproachuCompletely different approach to information systemsuViews information system as collection of interacting objects that work together to accomplish taskslObjects things in computer system that can respond to messageslConceptually, no processes, programs, data entities, or files are defined just objectsuOO languages: Java, C+, C# .NET, VB .NET43敏捷建模2Object-Oriented Approach to Systems 44敏捷建模2Object-Oriented Approach (continued)uObject-oriented analysis (OOA)lDefines types of objects users deal withlShows use cases are required to complete tasksuObject-oriented design (OOD)lDefines object types needed to communicate with people and devices in systemlShows how objects interact to complete taskslRefines each type of object for implementation with specific language of environmentuObject-oriented programming (OOP)lWriting statements in programming language to define what each type of object does 45敏捷建模2Class Diagram Created During OO Analysis46敏捷建模2SDLC VariationsuMany variations of SDLC in practicelBased on variation of names for phases lNo matter which one, activities/tasks are similaruSome increase emphasis on peoplelUser-centered design, participatory designlSociotechnical systemsuSome increase speed of developmentlRapid application development (RAD)lPrototyping47敏捷建模2Life Cycles with Different Names for Phases (Figure 2-20)48敏捷建模2Current Trends in DevelopmentuMore adaptive approacheslThe Unified Process (UP)lExtreme Programming (XP)lAgile ModelinglScrumuDetails on each in Chapter 1649敏捷建模2The Unified Process (UP)uObject-oriented development approachuOffered by IBM / Rational lBooch, Rumbaugh, JacobsonuUnified Modeling Language (UML) used primarily for modeling uUML can be used with any OO methodologyuUP defines four life cycle phases lInception, elaboration, construction, transition50敏捷建模2The Unified Process (UP) (continued)uReinforces six best practiceslDevelop iterativelylDefine and manage system requirementslUse component architectureslCreate visual modelslVerify qualitylControl changes51敏捷建模2Extreme Programming (XP)uRecent, lightweight, development approach to keep process simple and efficientuDescribes system support needed and required system functionality through informal user storiesuHas users describe acceptance tests to demonstrate defined outcomesuRelies on continuous testing and integration, heavy user involvement, programming done by small teams52敏捷建模2Agile ModelinguHybrid of XP and UP (Scott Ambler); has more models than XP, fewer documents than UPuInteractive and Incremental Modeling lApply right modelslCreate several models in parallellModel in small incrementsuTeamworklGet active stakeholder participationlEncourage collective ownershiplModel with others and display models publicly53敏捷建模2Agile Modeling (continued)uSimplicitylUse simple contentlDepict models simplylUse simplest modeling toolsuValidationlConsider testabilitylProve model is right with code54敏捷建模2ScrumuFor highly adaptive project needsuRespond to situation as rapidly as possibleuScrum refers to rugby gamelBoth are quick, agile, and self-organizinguTeam retains control over project uValues individuals over processes55敏捷建模2Tools to Support System DevelopmentuComputer-aided system engineering (CASE)lAutomated tools to improve the speed and quality of system development worklContains database of information about system called repositoryuUpper CASE support for analysis and designuLower CASE support for implementationuICASE integrated CASE toolsuNow called visual modeling tools, integrated application development tools, and round-trip engineering tools56敏捷建模2CASE Tool Repository Contains All System Information57敏捷建模2SummaryuSystem development projects are organized around the systems development life cycle (SDLC) uSome projects use a predictive approach to the SDLC, and others use a more adaptive approach to the SDLC uSDLC phases include project planning, analysis, design, implementation, and support58敏捷建模2Summary (continued)uIn practice, phases overlap, and projects contain many iterations of analysis, design, and implementationuModels, techniques, and tools make up a system development methodologyuSystem development methodology provides guidelines to complete every activity in the SDLC59敏捷建模2Summary (continued)uSystem development methodologies are based on traditional approach or object-oriented approachuCurrent trends include: Extreme Programming (XP), Unified Process (UP), Agile Modeling, and ScrumuCASE tools are designed to help analysts complete system development tasks60敏捷建模2nZq$u*x-A2D5H8KbNfQiTlXo#s%v(y0B3E6I9LdOgRjVmYp!t&w-z1C4G7JaMePhTkWnZr$u*x+A2E5H8KcNfQiUlXp#s%v)y0B3F6I9LdOgSjVmYq!t&w-z1D4G7JbMePhTkWoZr$u(x+A2E5H9KcNfRiUlXp#s&v)y0C3F6IaLdPgSjVnYq!t*w-A1D4G8JbMeQhTlWoZr%u(x+B2E5H9KcOfRiUmXp#s&v)z0C3F7IaLdPgSkVnYq$t*w-A1D5G8JbNeQhTlWo#r%u(y+B2E6H9LcOfRjUmXp!s&w)z0C4F7IaMdPgSkVnZq$t*x-A1D5G8KbNeQiTlWo#r%v(y+B3E6H9LcOgRjUmYp!s&w)z1C4F7JaMdPhSkWnZq$u*x-A2D5H8KbNfQiTlXo#r%v(y0B3E6I9LcOgRjVmYp!t&w)z1C4G7JaMePhSkWnZr$u*x+A2D5H8KcNfQiUlXo#s%v)y0B3F6I9LdOgSjVmYq!t&w-z1D4G7JbMePhTkWnZr$u(x+A2E5H8KcNfRiUlXp#s%v)y0C3F6IaLdOgSjVnYq!t*w-z1D4G8JbMeQhTkWoZr%u(x+B2E5H9KcOfRiUmXp#s&v)y0C3F7IaLdPgSjVnYq$t*w-A1D4G8JbNeQhTlWoZr%u(y+B2E6H9KcOfRjUmXp!s&v)z0C4F7IaMdPgSkVnZq$t*x-A1D5G8KbNeQiTlWo#r%u(y+B3E6H9LcOfRjUmYp!s&w)z0C4F7JaMdPhSkVnZq$u*x-A2D5G8KbNfQiTlXo#r%v(y0B3E6I9LcOgRjVmYp!t&w)z1C4F7JaMePhSkWnZq$u*x+A2D5H8KbNfQiUlXo#s%v(y0B3F6I9LdOgRjVmYq!t&w-z1C4G7JbMePhTkWnZr$u(x+A2E5H8KcNfQiUlXp#s%v)y0B3F6IaLdOgSjVmYq!t*w-z1D4G7JbMeQhTkWoZr$u(x+B2E5H9KcNfRiUmXp#s&v)y0C3F7IaLdPgSjVnYq$t*w-A1D4G8JbMeQhTlWoZr%u(x+B2E6H9KcOfRiUmXp!s&v)z0C3F7IaMdPgSkVnYq$t*x-A1D5G8JbNeQiTlWo#r%u(y+B3E6H9LcOfRjUmXp!s&w)z0C4F7IaMdPhSkVnZq$t*x-A2D5G8KbNeQiTlXo#r%v(y+B3E6I9LcOgnYq$t*x-A1D5G8JbNeQiTlWo#r%u(y+B2E6H9LcOfRjUmXp!s&w)z0C4F7IaMdPhSkVnZq$t*x-A2D5G8KbNeQiTlXo#r%v(y+B3E6I9LcOgRjUmYp!t&w)z1C4F7JaMdPhSkWnZq$u*x-A2D5H8KbNfQiTlXo#s%v(y0B3E6I9LdOgRjVmYp!t&w-z1C4G7JaMePhTkWnZr$u*x+A2E5H8KcNfQiUlXo#s%v)y0B3F6I9LdOgSjVmYq!t&w-z1D4G7JbMePhTkWoZr$u(x+A2E5H9KcNfRiUlXp#s&v)y0C3F6IaLdPgSjVnYq!t*w-A1D4G8JbMeQhTkWoZr%u(x+B2E5H9KcOfRiUmXp#s&v)z0C3F7IaLdPgSkVnYq$t*w-A1D5G8JbNeQhTlWo#r%u(y+B2E6H9LcOfRjUmXp!s&v)z0C4F7IaMdPgSkVnZq$t*x-A1D5G8KbNeQiTlWo#r%v(y+B3E6H9LcOgRjUmYp!s&w)z1C4F7JaMdPhSkWnZq$u*x-A2D5G8KbNfQiTlXo#r%v(y0B3E6I9LcOgRjVmYp!t&w)z1C4G7JaMePhSkWnZr$u*x+A2D5H8KcNfQiUlXo#s%v)y0B3F6I9LdOgSjVmYq!t&w-z1C4G7JbMePhTkWnZr$u(x+A2E5H8KcNfRiUlXp#s%v)y0C3F6IaLdOgSjVnYq!t*w-z1D4G8JbMeQhTkWoZr%u(x+B2E5H9KcNfRiUmXp#s&v)y0C3F7IaLdPgSjVnYq$t*w-A1D4G8JbNeQhTlWoZr%u(y+B2E6H9KcOfRjUmXp!s&v)z0C4F7IaMdPgSkVnZq$t*x-A1D5KcNfRiUmXp#s&v)y0C3F7IaLdPgSjVnYq$t*w-A1D4G8JbNeQhTlWoZr%u(y+B2E6H9KcOfRjUmXp!s&v)z0C3F7IaMdPgSkVnYq$t*x-A1D5G8JbNeQiTlWo#r%u(y+B3E6H9LcOfRjUmYp!s&w)z0C4F7JaMdPhSkVnZq$u*x-A2D5G8KbNfQiTlXo#r%v(y+B3E6I9LcOgRjUmYp!t&w)z1C4F7JaMePhSkWnZq$u*x+A2D5H8KbNfQiUlXo#s%v(y0B3F6I9LdOgRjVmYq!t&w-z1C4G7JaMePhTkWnZr$u*x+A2E5H8KcNfQiUlXp#s%v)y0B3F6IaLdOgSjVmYq!t*w-z1D4G7JbMeQhTkWoZr$u(x+B2E5H9KcNfRiUlXp#s&v)y0C3F6IaLdPgSjVnYq!t*w-A1D4G8JbMeQhTlWoZr%u(x+B2E6H9KcOfRiUmXp!s&v)z0C3F7IaMdPgSkVnYq$t*x-A1D5G8JbNeQhTlWo#r%u(y+B2E6H9LcOfRjUmXp!s&w)z0C4F7IaMdPhSkVnZq$t*x-A2D5G8KbNeQiTlXo#r%v(y+B3E6I9LcOgRjUmYp!s&w)z1C4F7JaMdPhSkWnZq$u*x-A2D5H8KbNfQiTlXo#s%v(y0B3E6I9LdOgRjVmYp!t&w-z1C4G7JaMePhTkWnZr$u*x+A2D5H8KcNfQiUlXo#s%v)y0B3F6I9LdOgSjVmYq!t&w-z1D4G7JbMePhTkWoZr$u(x+A2E5H9KcNfRiUlXp#s&vC4G7JaMePhSkWnZr$u*x+A2D5H8KcNfQiUlXo#s%v)y0B3F6I9LdOgSjVmYq!t&w-z1D4G7JbMePhTkWoZr$u(x+A2E5H9KcNfRiUlXp#s%v)y0C3F6IaLdOgSjVnYq!t*w-z1D4G8JbMeQhTkWoZr%u(x+B2E5H9KcOfRiUmXp#s&v)z0C3F7IaLdPgSkVnYq$t*w-A1D5G8JbNeQhTlWoZr%u(y+B2E6H9KcOfRjUmXp!s&v)z0C4F7IaMdPgSkVnZq$t*x-A1D5G8KbNeQiTlWo#r%v(y+B3E6H9LcOgRjUmYp!s&w)z0C4F7JaMdPhSkVnZq$u*x-A2D5G8KbNfQiTlXo#r%v(y0B3E6I9LcOgRjVmYp!t&w)z1C4G7JaMePhSkWnZr$u*x+A2D5H8KbNfQiUlXo#s%v(y0B3F6I9LdOgRjVmYq!t&w-z1C4G7JbMePhTkWnZr$u(x+A2E5H8KcNfRiUlXp#s%v)y0C3F6IaLdOgSjVnYq!t*w-z1D4G7JbMeQhTkWoZr$u(x+B2E5H9KcNfRiUmXp#s&v)y0C3F7IaLdPgSjVnYq$t*w-A1D4G8JbRiUlXp#s%v)y0B3F6IaLdOgSjVmYq!t*w-z1D4G7JbMeQhTkWoZr$u(x+B2E5H9KcNfRiUmXp#s&v)y0C3F7IaLdPgSjVnYq$t*w-A1D4G8JbNeQhTlWoZr%u(x+B2E6H9KcOfRiUmXp!s&v)z0C3F7IaMdPgSkVnYq$t*x-A1D5G8JbNeQiTlWo#r%u(y+B3E6H9LcOfRjUmYp!s&w)z0C4F7IaMdPhSkVnZq$t*x-A2D5G8KbNeQiTlXo#r%v(y+B3E6I9LcOgRjUmYp!t&w)z1C4F7JaMePhSkWnZq$u*x+A2D5H8KbNfQiUlXo#s%v(y0B3E6I9LdOgRjVmYp!t&w-z1C4G7JaMePhTkWnZr$u*x+A2E5H8KcNfQiUlXp#s%v)y0B3F6IaLdOgSjVmYq!t*w-z1D4G7JbMePhTkWoZr$u(x+A2E5H9KcNfRiUlXp#s&v)y0C3F6IaLdPgSjVnYq!t*w-A1D4G8JbMeQhTlWoZr%u(x+B2E6H9KcOfRiUmXp#s&v)z0C3F7IaLdPgSkVnYq$t*w-AH9KcNfRiUlXp#s&v)y0C3F6IaLdPgSjVnYq!t*w-A1D4G8JbMeQhTlWoZr%u(x+B2E5H9KcOfRiUmXp#s&v)z0C3F7IaLdPgSkVnYq$t*w-A1D5G8JbNeQhTlWo#r%u(y+B2E6H9LcOfRjUmXp!s&w)z0C4F7IaMdPgSkVnZq$t*x-A1D5G8KbNeQiTlWo#r%v(y+B3E6H9LcOgRjUmYp!s&w)z1C4F7JaMdPhSkWnZq$u*x-A2D5H8KbNfQiTlXo#s%v(y0B3E6I9LcOgRjVmYp!t&w)z1C4G7JaMePhSkWnZr$u*x+A2D5H8KcNfQiUlXo#s%v)y0B3F6I9LdOgSjVmYq!t&w-z1D4G7JbMePhTkWnZr$u(x+A2E5H8KcNfRiUlXp#s%v)y0C3F6IaLdOgSjVnYq!t*w-z1D4G8JbMeQhTkWoZr%u(x+B2E5H9KcOfRiUmXp#s&v)y0C3F7IaLdPgSjVnYq$t*w-A1D4G8JbNeQhTlWoZr%u(y+B2E6H9KcOfRjUmXt*w-z1D4G8JbMeQhTkWoZr%u(x+B2E5H9KcNfRiUmXp#s&v)y0C3F7IaLdPgSjVnYq$t*w-A1D4G8JbNeQhTlWoZr%u(y+B2E6H9KcOfRjUmXp!s&v)z0C4F7IaMdPgSkVnYq$t*x-A1D5G8JbNeQiTlWo#r%u(y+B3E6H9LcOfRjUmYp!s&w)z0C4F7JaMdPhSkVnZq$u*x-A2D5G8KbNfQiTlXo#r%v(y0B3E6I9LcOgRjUmYp!t&w)z1C4F7JaMePhSkWnZq$u*x+A2D5H8KbNfQiUlXo#s%v(y0B3F6I9LdOgRjVmYq!t&w-z1C4G7JbMePhTkWnZr$u*x+A2E5H8KcNfQiUlXp#s%v)y0B3F6IaLdOgSjVmYq!t*w-z1D4G7JbMeQhTkWoZr$u(x+B2E5H9KcNfRiUmXp#s&v)y0C3F6IePhTkWnZr$u*x+A2E5H8KcNfQiUlXp#s%v)y0B3F6IaLdOgSjVmYq!t*w-z1D4G7JbMeQhTkWoZr$u(x+B2E5H9KcNfRiUlXp#s&v)y0C3F6IaLdPgSjVnYq!61敏捷建模
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号