參考ni官方培訓lesson introduction_第1頁
參考ni官方培訓lesson introduction_第2頁
參考ni官方培訓lesson introduction_第3頁
參考ni官方培訓lesson introduction_第4頁
參考ni官方培訓lesson introduction_第5頁
已閱讀5頁,還剩46頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、Managing Software Engineering in LabVIEWWhat You Need To Get StartedComputer running NI LabVIEW 2009 and Windows XP or laterManaging Software Engineering in LabVIEW Course Manual Managing Software Engineering in LabVIEW Exercise ManualManaging Software Engineering in LabVIEW Course CDNI Requirements

2、 GatewayNI LabVIEW VI Analyzer ToolkitNI LabVIEW Unit Test Framework ToolkitNI LabVIEW Application BuilderRoot DirectoryExercisesSolutionsManaging Software Engineering in LabVIEWFile LocationsThe course installer places the course files in the following location:Instructional MethodsTopicLectureQuiz

3、zesDemonstrationsConcept ExerciseDevelopment ExerciseGetting The Most Out Of This CourseAsk questions!Experiment with hands-on exercises to understand the methods usedExplore solutionsImplementations explore a possible solutionyou may find a better oneCoursesNew UserLabVIEW Basics ILabVIEW Basics II

4、Experienced UserLabVIEW Intermediate ILabVIEW Intermediate IIAdvanced UserManaging Software Engineering in LabVIEWAdvanced Architectures in LabVIEWCertificationsCertified LV Associate Developer ExamSkills tested:LabVIEW environment knowledgeCertified LabVIEW Developer ExamSkills tested:LabVIEW appli

5、cation development expertiseCertified LabVIEW Architect ExamSkills tested:LabVIEW application development masterySkills learned:LabVIEW environment navigationBasics application creation using LabVIEWBasics of data acquisition and instrument controlSkills learned:Modular application developmentStruct

6、ured design and development practicesInter-application communication and connectivity techniquesSkills learned:Customization of the software engineering processSoftware engineering tools and techniquesAdvanced architectural design techniquesDesign of components to support architectural designCourse

7、Learning MapLesson 1IntroductionLesson 2Requirements GatheringLesson 3DesignLesson 4DevelopmentLesson 5ValidationLesson 6DeploymentCourse GoalsThis course prepares you to:Create quality applications that must meet deadlines, satisfy requirements, and satisfy regulatory standardsManage the developmen

8、t of large applicationsManage a team of developersTake the Certified LabVIEW Architect certificationLesson 1 IntroductionSoftware Engineering ProcessRoles of a LabVIEW ArchitectConfiguration ManagementA. Software Engineering ProcessExample phasesRequirements GatheringDesignDevelopmentValidationDeplo

9、ymentSoftware engineering process A defined, structured process that defines specific phases and tasks to plish during the development of softwareWhen to use the Software Engineering ProcessIf you are concerned about:QualityMeeting deadlinesSatisfying requirementsMeeting regulatory standardsScope of

10、 the application and the number of developers can contribute to the need for a processSoftware Engineering Process ModelsSample software engineering process modelsWaterfall ModelV-ModelSpiral ModelAgile ModelSoftware engineering process model A model that describes the steps to follow when developin

11、g softwareWaterfall ModelEmphasizes each stage of development with a signoff from stakeholdersSignificant planning required in early stagesNo overlap between stagesReturning to an earlier phase can involve costly reworkDo not see actual results for a long timelosing confidence of managers and/or cus

12、tomersRequirements GatheringDesignDevelopmentValidationDeploymentRequirements GatheringApplication DesignDevelopment & DebuggingUnit TestingDeploymentIntegration TestingModule DesignReview and TestSoftware Engineering V-ModelDevelopmentVerificationPrototypingServiceSpiral ModelRisk Analysis Spiral M

13、odelIDRiskProbabilityLossRisk ExposureRisk Management Approach1Acquisition rates too high5735Develop prototype to demonstrate feasibility2File format might not be efficient5315Develop benchmarks to show speed of data manipulation3Uncertain user interface2918Involve customer; develop prototypeAgile M

14、odelDevelopment occurs through multiple iterationsTeams are small (5-9 people) and cross-functional Model promotes face-to-face communication over written documentsDaily communications prevent problems from being hiddenMore adaptive than other more predictive methodsFocus is on adapting quickly to c

15、hanging realitiesLess focus on future planningAgile Model ProcessBreak tasks into small increments with minimal planningIterations are short time frames (1-4 weeks)Each iteration follows a full software development cycleEach tested iteration is demonstrated to stakeholdersMinimizes overall risk and

16、lets the project adapt to changes quicklyGoal is to have an available release at the end of each iterationAgile Process ModelRequirements GatheringDesignDevelopmentValidationDemonstrate Iteration to StakeholdersBreak application into small tasksDeploymentEach cycle represents completion of one small

17、 taskB. Roles of a LabVIEW ArchitectProject ManagerManage requirementsSchedule and track projectsImplement quality assurance proceduresProject ArchitectDesign the application architectureCreate or evaluate Computer-Aided Software Engineering (CASE) toolsDefine development techniques A LabVIEW Archit

18、ect fills two roles within the software engineering process:Create or Evaluate CASE toolsCASE tools can be used to assist the development processThe general goal of software is to assist an operator in one or more tasksSoftware tools can substantially ease the burden of developing code Many companie

19、s standardize across all projectsIt is important to understand the tools that are already in placeTypes of CASE ToolsConfiguration managementProject managementRequirements managementModelingCode generationAutomation of development tasksCode analysisTestingC. Configuration ManagementTypically perform

20、ed with the assistance of software configuration management toolsShould be used throughout software engineering processConfiguration Management - Activities designed to monitor and control the evolution of a software product Configuration ManagementRequirements GatheringDesignDevelopmentValidationDe

21、ploymentTools for Configuration ManagementRevision HistoryGraphical DifferencingCompare VI HierarchiesVI MergeSource Code ControlRevision HistoryRevision History (continued)Revision history maintains a list of changes made to the VIGraphical DifferencingCompare VI HierarchiesVI MergeSource Code Cont

22、rolSoftware that tracks changes to filesStores all versions of files and their change recordsFiles are stored in a code repositoryChanges are made within a local workspaceProvides multiple developers access to filesSource code control optionsUse within LabVIEW Professional Development SystemUse dire

23、ctly through a source code control toolIntegration with the LabVIEW Project LabVIEW Project makes accessing SCC in LabVIEW simplerRight-click one or more files to check in or outRight-click and select Show Differences to view edits interactively (Perforce and VSS)File icon shows current statusChecke

24、d inChecked outCommon Source Code Control FunctionsCheck outCommit / SubmitAddUpdate to revisionLockBranchMergeBranching CodeBranchSplit from the main development line to create a new version of the codeMerging CodeMergeIntegrate the development split into the main development lineTeam-Based Develop

25、mentServer stores all revisions of filesProject filesVIsLLBsDocumentsEach developer can check copies of files in and out as neededTeam-Based Development PoliciesMaintain consistent file hierarchyBranch code to create new versionsOr to create a testing sandboxParallel development on the same code mod

26、ule should be avoided when possibleOnly check out code that you are actively modifyingTest code before you check it back inDocument what was changed in the codeWhen revision is complete, merge your code with the main line of developmentSource Code Control Supported PackagesPerforceSubversion*Microso

27、ft Visual SourceSafeIBM Rational ClearCaseMKS Source Integrity* Requires a third-party plug-in for LabVIEW IntegrationFeatures of Perforce and SubversionPerforceProprietary License (Free for up to two users)Graphical UIChangelistsBranchspecsHybrid of merge and lock concurrency modelSubversionOpen-so

28、urce, free applicationCommand line interfaceFree third-party client applications are available (for example, TortoiseSVN)Branching and tagging are cheap operationsTortoiseSVN Client for SubversionA client for Subversion source code controlImplemented as a Microsoft Windows shell extensionAll command

29、s are available directly from Windows ExplorerView the status of your files directly from the Windows ExplorerExercise 1-1: Source Code ControlInstall and configure a source code control system with LabVIEW to improve the configuration management of a project and learn common techniques of using a s

30、ource code control system.Exercise 1-1: Source Code ControlIn this exercise we worked with source code control on a single system. What challenges would arise if we had modified files on a network code repository?TortoiseSVN creates a hidden .svn directory within every folder that you add to the cod

31、e repository. This directory contains revision information for the files within that folder. What problems could arise from the presence of these files?Source Code Control vs VI RevisionSource Code ControlDevelopers can document changes to codeDocumentation is stored in SCCFacilitates retrieval of p

32、revious versions of codeFacilitates branching and merging of developmentFacilitates file checkout and locking to prevent simultaneous editsVI RevisionDevelopers can document changes to codeDocumentation is stored in VIAdvantages of Configuration ManagementProvides a safety net for a project by keepi

33、ng track of data, requirements, code, time, and other componentsGuarantees a consistent and correct record of what you have done Required by many organizationsSummary QuizWhich of the following software engineering process models is the most flexible in terms of adapting to changes in customer requi

34、rements?WaterfallV-modelSpiralAgileSummary QuizWhich of the following software engineering process models is the most flexible in terms of adapting to changes in customer requirements?WaterfallV-modelSpiralAgileSummary QuizA LabVIEW Architect performs which of the following tasks? (multiple answer)Implement modulesEstimate project cost/durationDefine and develop CASE toolsDefine development techniquesSummary QuizA LabVIEW Architect performs which of the following tasks? (

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論