Configuration Managment Powerpoint
-
Upload
jeannine-jacobs -
Category
Documents
-
view
19 -
download
0
Transcript of Configuration Managment Powerpoint
Configuration Management
Jeannine Jacobs
Overview
Best Practices
ToolsConfiguration Management – Chapter 18
“…Rapid software changes is one of the more important tasks of software systems development and maintenance teams. The task encompasses adequate quality assurance of all changes performed and their proper documentation as well as identification of the software version (or release) installed by each customer” (Galin).
What is SCM?
Software Configuration Management Book Definition - An SQA component responsible
for applying (computerized and non-computerized) technical tools and administrative procedures that enable completion of the tasks required to maintain SCIs and software configuration versions.
ISO 9000–3 standards
SCM deals with all the issues related to: software changes documentation of changes organizing approved software versions, Provide information and copies of registered
versions throughout the life cycle
Managing ChangeSoftware Configuration Version Approved set of documented SCI versions that constitute a software
system or document at a given point of time Activities are controlled by software configuration management
procedures. Versions are released according to the set procedures
Software Configuration Item (SCI) Approved unit of software code designed for configuration management Treated as a distinct entity
JARGON!
EXAMPLE Process
Do you have a chart similar to this at your job??
Change Request Form
What information is needed for the review board to make a decision?
Change principlesChange detailsChange timetable and resources estimates
Release New VersionsWHY?
Defective SCIs
Special Features demanded by NEW customers
Improvements to current SCIs
Types of ReleasesRevisionsBaseline versionsIntermediate versions
Num
bering Conventions Exam
ple
Baseline vs. IntermediateBaseline: milestones in lifecycle (reviewed, tested, and approved)
Revisions: small adjustments before a baseline is released.Intermediate: fixes for smaller issues (temporary)
Reasons to consider accepting a change: Contribution of the proposed change Urgency Effect on project timetables, level of service, etc. Effort required Required SQA efforts Resources and cost of performing the change
SCM Plans Define levels of control and responsibility Identify SCI (Software Configuration Items) Define CM procedures Prepare the CM plan Establish the software project CCB (Change Control Board) Set up CM tools and library
-Susan SekiraNASA Goddard Space Flight Center
RESOURCES
FOLLOW-UPDEV/OP STAGES
? How do these plan objectives strengthen the effect of SCM?
Evolution Models
Linear Model Only ONE unique version All customers use same version
Single organization Packages with similar structure
Tree Model Parallel versions Serves different customers at
same time Firmware Configurations
Version Control & Information Services
• Information related to software change control
• Information about SCIs and software configuration versions
Audits
SCM audits are performed to evaluate compliance with SCM procedures
They cannot serve as compliance enforcement tools
Examples:• Percentage of unapproved changes• Percentages of properly documented new SCIs• Percentage of design reviews and software tests of
changed SCIs that have not been performed according to the relevant procedures
• Percentage of cases of failure to transmit all version–related information to the customer.
What are the risks involved with partial compliance? ?
Industry Advice“5 Things About Configuration Management Your Boss Needs to Know” Configuration Management (CM)
ensures that the current design and build state of the system is known, good & trusted; and doesn’t rely on the tacit knowledge of the development team. [IT Automation]
“You can pay me now, or you can pay me later.” The quote is just as valid with regard to Configuration Management.
New York Stock Exchange (NYSE) dealt with back over 10 years ago. A software “glitch” prevented the NYSE from trading stocks for almost 90 minutes.
“Top 10 Best Practices in Configuration Management” Organize Shared Code into
Separate Products- The best practice in this situation is to partition the shared code into one (or more) separate products.
Separate Problems/ Issues/ Defects from Activities/ Features/ Tasks- It's critical to distinguish engineering problems from features as they are completely different processes.
Continuous Automation- The more advanced the automation, the higher your quality and the lower your costs
“A tool is only as good as you use it,” the saying goes…When deploying new software configuration management (SCM) tools, implementers sometimes focus on perfecting fine-grained activities, while unwittingly carrying forward poor, large-scale practices from their previous jobs or previous tools. The result is a well-executed blunder.
Industry AdviceHigh-level Best Practices in Software Configuration Management
By Laura Wingerd & Christopher Seiwald
Training
SCM Tools
Ansible, Puppet, and Docker
? Bonus Question: What is an Ansible?
Improved change quality
With Puppet Enterprise, everyone, including the change management team, has confidence in the quality of changes.
That’s because as changes go through the different environments — dev, test, pre-production — everyone has high confidence that these upstream environments look just like production.
PACKAGE YOUR APPLICATION INTO A STANDARDIZED UNIT FOR SOFTWARE DEVELOPMENT
Docker containers wrap a piece of software in a complete filesystem that contains everything needed to run: code, runtime, system tools, system libraries – anything that can be installed on a server.
This guarantees that the software will always run the same, regardless of its environment.
Questions?
References• UpGuard . (2016). 5 Things About Configuration Management Your Boss Needs To Know. Retrieved from UpGuard :
https://www.upguard.com/blog/5-configuration-management-boss• Farah, J. (2007, Nov 27). Top 10 Best Practices in Configuration Management. Retrieved from CM Crossroads:
https://www.cmcrossroads.com/article/top-10-best-practices-configuration-management?page=0%2C7• GALIN, D. (2004). Software Quality Assurance: From theory to implementation. Essex: Pearson Education Limited.• Wingerd, L. a. (1998, Jul). High-level Best Practices in Software Configuration Management. Retrieved from Perforce:
https://www.perforce.com/sites/default/files/pdf/perforce-best-practices.pdf• Lego Image: http://theremedyforit.com/2011/12/version-control-in-bmc-ars/• CMP Flow Chart: Susan Sekira, NASA Goddard Space Flight Center, March 2008:
http://www.slideshare.net/adorepump/software-configuration-management-presentation-878520/5• Change Request Form: http://OpenThinkLabs.com• Final.doc Comic: PHDComics.com• Version Control Comic: http://www.eeweb.com/rtz/version-control• CMPIC: https://www.cmpic.com/PDFs/CMPIC_Brochure.pdf• Justin: http://www.justin.fi/en/services/training/practical-configuration-management/• Rocannon’s World Book Image: https://en.wikipedia.org/wiki/Rocannon%27s_World• Ansible Website: https://www.ansible.com/configuration-management• Puppet Case Study: https://puppet.com/resources/case-study/lv/thank-you• Docker Website: https://www.docker.com/