Software Configuration Management SEII - Lecture 20

Change management Software configuration management SCM scenario Elements of SCM Component, process, construction, and human elements SCM repository SCM process Identification of objects

pptx22 trang | Chia sẻ: dntpro1256 | Lượt xem: 521 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Software Configuration Management SEII - Lecture 20, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Software Configuration Management SEII-Lecture 20Dr. Muzafar KhanAssistant ProfessorDepartment of Computer ScienceCIIT, Islamabad.RecapComponent-level testingEquivalence partitioning, boundary value analysis, path testingNavigation testingTesting navigation syntax and semanticsConfiguration testingServer-side and client-side issuesSecurity testingFirewall, authentication, encryption, authorizationPerformance testingLoad and stress testing2ImportanceContinuous changesConfusion arises if poor change managementSCM is a set of tracking and controlling activitiesSCM activities are developed toIdentify changeControl changeEnsure that change is being properly implementedReport changes to stakeholdersDifference between software support and SCM3Origin of ChangesNew business / market changeNew stakeholder needsReorganization or business growth/downsizing Budgetary or scheduling constraints4Software Configuration ManagementInformationComputer programs (source and exe)Work products for different stakeholdersData (within the program or external to it)Software Configuration Items (SCI)Information items e.g. UML diagram or complete design documentFirst law of system engineering "No matter where you are in the system life cycle, the system will change, and the desire to change it will persist throughout the life cycle."5SCM ScenarioProject managerTimely completionConfiguration manager Procedures and policies are followedSoftware engineers Work effectively, communicate and coordinate efficientlyCustomerFollow formal procedures to request changeIndicate bugs in product6Elements of a Configuration Management SystemComponent elementsSet of tools to access and manage configuration itemsProcess elementsCollection of actions and tasks for change managementConstruction elementsSet of tools that automate the construction of softwareHuman elementsSet of tools and process features to implement effective SCM7Baselines8Figure source: Software Engineering: A Practitioner’s Approach, R. S. Pressman, 7th ed., p. 588Configuration Objects9Figure source: Software Engineering: A Practitioner’s Approach, R. S. Pressman, 7th ed., p. 590SCM Repository [1/3]In early days of software engineeringPaper documentsFinding a configuration item was difficultWhen items are changed?Constructing a new version was time consuming and error proneDescribing detailed relationships between components was virtually impossibleProgrammer had to remember a lot of things10SCM Repository [2/3]Set of mechanisms and data structures Data integrity, sharing, and integrationMeta-modelHow information is stored?How data can be accessed by tools?How data can be viewed by software engineers?How well data security and integrity can be maintained?How well the existing model can be extended?11SCM Repository [3/3]Provides two classes of servicesConventional services of modern DBMSServices specific to software engineering environmentServices for software teamIntegrate or directly support process management functionsSupport specific rules that govern the SCM function and the data maintained within the repositoryProvide an interface to other toolsAccommodate storage of sophisticated data objects e.g. graphics and video12Contents of the Repository13Figure source: Software Engineering: A Practitioner’s Approach, R. S. Pressman, 7th ed., p. 591SCM Features [1/2]VersioningMany versions are createdMust save all versionsMust be able to control wide variety of object typesDependency tracking and change managementVariety of relationshipsTracking all relationships is crucialRequirements tracingTracking of design and construction components to requirementsForward and backward tracing14SCM Features [2/2]Configuration managementTracking of series of configurations representing specific project milestones or production releasesAudit trailsAdditional information about when, why, and by whom changes are madeSource of changes can be entered as attributes of specific objectsRepository trigger mechanism to enter audit information for change15SCM Process [1/3]Main objectivesTo identify all items that collectively define the software configurationTo manage changes to one or more of these itemsTo facilitate the construction of different versions of an applicationTo ensure software quality is maintained as the configuration evolves over time16SCM Process [2/3]Questions to answerHow does a software team identify the discrete elements of a software configuration?How does an organization manage the many existing versions of a program (and its documentation) in a manner that will enable change to be accommodated efficiently?How does an organization control changes before and after software is released to a customer?Who has responsibility for approving and ranking requested changes?How can we ensure that changes have been made properly?What mechanism is used to apprise others of changes that are made?17SCM Process [3/3]18Figure source: Software Engineering: A Practitioner’s Approach, R. S. Pressman, 7th ed., p. 593Identification of Objects [1/3]To manage and control items, we need to separately name and organize them using object-oriented approachBasic objectsUnit of informationExample: section of requirements specificationAggregate objectsCollection of basic and other aggregate objectsA list of pointers (at conceptual level)Example: DesignSpecification contains ComponentN and UMLClassDiagramN19Identification of Objects [2/3]Distinct object featuresNameCharacter stringUnambiguous identificationDescriptionList of data items that identify SCI type e.g. model element, program, dataProject identifier, change/version informationList of resourcesResources provided, processed, referenced, or otherwise required by the objectExample: data types, specific functions, variable namesRealizationA pointer to the unit of text in case of basic object and null for an aggregate object20Identification of Objects [3/3]RelationshipsClass diagram requirements modelRequirements model requirements specificationHierarchy (cross-structure relationships)DataModel DataFlowModelDataModel TestCaseClassM21SummaryChange managementSoftware configuration managementSCM scenarioElements of SCMComponent, process, construction, and human elementsSCM repositorySCM processIdentification of objects22

Các file đính kèm theo tài liệu này:

  • pptxlecture_20_csc392_dr_muzafar_khan_4343_2027030.pptx
Tài liệu liên quan