Configuration management (CM) is the process of identifying, organizing, and controlling software changes. It aims to minimize confusion and maximize productivity by minimizing mistakes during software development. CM manages changes throughout the development process by identifying work products, establishing change control processes, and generating reports. It is important for project success and controlling quality, as uncontrolled changes can delay delivery. CM involves activities like identifying changes, controlling changes, and reporting changes. It utilizes tools like version control systems and bug trackers.
Introduction To Software Configuration ManagementRajesh Kumar
Configuration management (CM) is a field of management that focuses on establishing and maintaining consistency of a system's or product's performance and its functional and physical attributes with its requirements, design, and operational information throughout its life.[1] For information assurance, CM can be defined as the management of security features and assurances through control of changes made to hardware, software, firmware, documentation, test, test fixtures, and test documentation throughout the life cycle of an information system.
The quality of software systems may be expressed as a collection of Software Quality Attributes. When the system requirements are defined, it is essential also to define what is expected regarding these quality attributes, since these expectations will guide the planning of the system architecture and design.
Software quality attributes may be classified into two main categories: static and dynamic. Static quality attributes are the ones that reflect the system’s structure and organization. Examples of static attributes are coupling, cohesion, complexity, maintainability and extensibility. Dynamic attributes are the ones that reflect the behavior of the system during its execution. Examples of dynamic attributes are memory usage, latency, throughput, scalability, robustness and fault-tolerance.
Following the definitions of expectations regarding the quality attributes, it is essential to devise ways to measure them and verify that the implemented system satisfies the requirements. Some static attributes may be measured through static code analysis tools, while others require effective design and code reviews. The measuring and verification of dynamic attributes requires the usage of special non-functional testing tools such as profilers and simulators.
In this talk I will discuss the main Software Quality attributes, both static and dynamic, examples of requirements, and practical guidelines on how to measure and verify these attributes.
A detail review of configuration and change management. This lecture provides details about how to manage different software versions of same software in a market with different customers clients and different set of functionalities.
Introduction To Software Configuration ManagementRajesh Kumar
Configuration management (CM) is a field of management that focuses on establishing and maintaining consistency of a system's or product's performance and its functional and physical attributes with its requirements, design, and operational information throughout its life.[1] For information assurance, CM can be defined as the management of security features and assurances through control of changes made to hardware, software, firmware, documentation, test, test fixtures, and test documentation throughout the life cycle of an information system.
The quality of software systems may be expressed as a collection of Software Quality Attributes. When the system requirements are defined, it is essential also to define what is expected regarding these quality attributes, since these expectations will guide the planning of the system architecture and design.
Software quality attributes may be classified into two main categories: static and dynamic. Static quality attributes are the ones that reflect the system’s structure and organization. Examples of static attributes are coupling, cohesion, complexity, maintainability and extensibility. Dynamic attributes are the ones that reflect the behavior of the system during its execution. Examples of dynamic attributes are memory usage, latency, throughput, scalability, robustness and fault-tolerance.
Following the definitions of expectations regarding the quality attributes, it is essential to devise ways to measure them and verify that the implemented system satisfies the requirements. Some static attributes may be measured through static code analysis tools, while others require effective design and code reviews. The measuring and verification of dynamic attributes requires the usage of special non-functional testing tools such as profilers and simulators.
In this talk I will discuss the main Software Quality attributes, both static and dynamic, examples of requirements, and practical guidelines on how to measure and verify these attributes.
A detail review of configuration and change management. This lecture provides details about how to manage different software versions of same software in a market with different customers clients and different set of functionalities.
Following presentation answers:
- Why do we need evolution?
- What happens if we do not evolve the software?
- What are the types of software evolution?
- What are Lehman's laws
- What are the strategies for evolution?
It is one of the topics of Software Engineering. Formal Approaches to SQA. It contains the information related to formal approaches and necessity of the approach.
Following presentation answers:
- Why do we need evolution?
- What happens if we do not evolve the software?
- What are the types of software evolution?
- What are Lehman's laws
- What are the strategies for evolution?
It is one of the topics of Software Engineering. Formal Approaches to SQA. It contains the information related to formal approaches and necessity of the approach.
Configuration management (CM) is a field of management that focuses on establishing and maintaining consistency of a system's or product's performance and its functional and physical attributes with its requirements, design, and operational information throughout its life.[1] For information assurance, CM can be defined as the management of security features and assurances through control of changes made to hardware, software, firmware, documentation, test, test fixtures, and test documentation throughout the life cycle of an information system.
scmGalaxy.com is dedicated to software configuration, build and Release management. This covers CVS, VSS (Visual Source Safe),Perforce, SVN(Subversion) MKS Integrity, ClearCase,TFS,CM Synergy, Best Practices ,AnthillPro, Apache Ant, Maven, Bamboo, Cruise Control and many more tools.
Software Configuration Management And CVSRajesh Kumar
scmGalaxy.com is dedicated to software configuration, build and Release management. This covers CVS, VSS (Visual Source Safe),Perforce, SVN(Subversion) MKS Integrity, ClearCase,TFS,CM Synergy, Best Practices ,AnthillPro, Apache Ant, Maven, Bamboo, Cruise Control and many more tools.
Palestine last event orientationfvgnh .pptxRaedMohamed3
An EFL lesson about the current events in Palestine. It is intended to be for intermediate students who wish to increase their listening skills through a short lesson in power point.
Read| The latest issue of The Challenger is here! We are thrilled to announce that our school paper has qualified for the NATIONAL SCHOOLS PRESS CONFERENCE (NSPC) 2024. Thank you for your unwavering support and trust. Dive into the stories that made us stand out!
Synthetic Fiber Construction in lab .pptxPavel ( NSTU)
Synthetic fiber production is a fascinating and complex field that blends chemistry, engineering, and environmental science. By understanding these aspects, students can gain a comprehensive view of synthetic fiber production, its impact on society and the environment, and the potential for future innovations. Synthetic fibers play a crucial role in modern society, impacting various aspects of daily life, industry, and the environment. ynthetic fibers are integral to modern life, offering a range of benefits from cost-effectiveness and versatility to innovative applications and performance characteristics. While they pose environmental challenges, ongoing research and development aim to create more sustainable and eco-friendly alternatives. Understanding the importance of synthetic fibers helps in appreciating their role in the economy, industry, and daily life, while also emphasizing the need for sustainable practices and innovation.
Unit 8 - Information and Communication Technology (Paper I).pdfThiyagu K
This slides describes the basic concepts of ICT, basics of Email, Emerging Technology and Digital Initiatives in Education. This presentations aligns with the UGC Paper I syllabus.
A Strategic Approach: GenAI in EducationPeter Windle
Artificial Intelligence (AI) technologies such as Generative AI, Image Generators and Large Language Models have had a dramatic impact on teaching, learning and assessment over the past 18 months. The most immediate threat AI posed was to Academic Integrity with Higher Education Institutes (HEIs) focusing their efforts on combating the use of GenAI in assessment. Guidelines were developed for staff and students, policies put in place too. Innovative educators have forged paths in the use of Generative AI for teaching, learning and assessments leading to pockets of transformation springing up across HEIs, often with little or no top-down guidance, support or direction.
This Gasta posits a strategic approach to integrating AI into HEIs to prepare staff, students and the curriculum for an evolving world and workplace. We will highlight the advantages of working with these technologies beyond the realm of teaching, learning and assessment by considering prompt engineering skills, industry impact, curriculum changes, and the need for staff upskilling. In contrast, not engaging strategically with Generative AI poses risks, including falling behind peers, missed opportunities and failing to ensure our graduates remain employable. The rapid evolution of AI technologies necessitates a proactive and strategic approach if we are to remain relevant.
Macroeconomics- Movie Location
This will be used as part of your Personal Professional Portfolio once graded.
Objective:
Prepare a presentation or a paper using research, basic comparative analysis, data organization and application of economic information. You will make an informed assessment of an economic climate outside of the United States to accomplish an entertainment industry objective.
2024.06.01 Introducing a competency framework for languag learning materials ...Sandy Millin
http://sandymillin.wordpress.com/iateflwebinar2024
Published classroom materials form the basis of syllabuses, drive teacher professional development, and have a potentially huge influence on learners, teachers and education systems. All teachers also create their own materials, whether a few sentences on a blackboard, a highly-structured fully-realised online course, or anything in between. Despite this, the knowledge and skills needed to create effective language learning materials are rarely part of teacher training, and are mostly learnt by trial and error.
Knowledge and skills frameworks, generally called competency frameworks, for ELT teachers, trainers and managers have existed for a few years now. However, until I created one for my MA dissertation, there wasn’t one drawing together what we need to know and do to be able to effectively produce language learning materials.
This webinar will introduce you to my framework, highlighting the key competencies I identified from my research. It will also show how anybody involved in language teaching (any language, not just English!), teacher training, managing schools or developing language learning materials can benefit from using the framework.
Introduction to AI for Nonprofits with Tapp NetworkTechSoup
Dive into the world of AI! Experts Jon Hill and Tareq Monaur will guide you through AI's role in enhancing nonprofit websites and basic marketing strategies, making it easy to understand and apply.
2. What is Configuration Management
“The
art of coordinating software development
to minimize…confusion is called configuration
management. Configuration management is the
art of identifying, organizing and controlling
modifications to the software being built by a
programming team. The goal is to maximize
productivity by minimizing mistakes.”
– Babich
Software configuration management manages
the effect of change through out the software
process.
3. What is CM not
Not
just version control
Not
just for source code management
Not
only for development phase
Selecting
and using tools are important,
but design and management of CM
process are more crucial for project
success.
4. Q&A
What
is it ?
Answer: Change Management. Auditing and
reporting on the changes made.
Who does it ?
Answer: Everyone involved in the software
process.
Why is it important ?
Answer: If you don’t control change, it controls
you. Uncontrolled changes suffers software
quality and delivery is delayed. So, it is an
essential part of quality management.
5. Q&A
What
are the steps ?
Answer:
1.Many work products are produced when a
software if made of. Each must be
uniquely identified.
2.Mechanism for change control is
established as changes are made, the
process is audited and reports are made.
What is the work product ?
Answer: describes the Programs/Coding e.g.
Data, Documentations.
6. Q&A
How
do I ensure that I’ve done it right?
Answer: When every work product can be
accounted for, traced and controlled.
When every change can be tracked and
analyzed.
When everyone who needs to know about a
change has been informed-you've done
it right.
7. SCM Activities:
Identify
change.
Control changes.
Ensure that the changes are being
properly implemented.
Report changes to others who may have
an interest.
8. Some Simple CM Scenarios
Developer
A wants to see latest
version of foo.c and its change history
since last week
B
needs to revert foo-design.doc to its
version two days ago
B
makes a release of the project and
he needs to know what items to
include and which version
9. Some Simple CM Scenarios (cont.)
A lives in IUT, Gazipur, Bangladesh and B lives
in Boston, US, they want to work on
HelloWorld.java together
In the latest release, a serious bug is found
and manager C wants to track what changes
caused the bug, who made those changes
and when
C wants to get reports about current project
progress to decide if he needs to hire more
programmers and delay the alpha release
11. Configuration Item (CI)
An approved and accepted deliverable, changes
have to be made through formal procedure
Examples:
Management plan
Requirement
Design specification
Source code and executable code
Test specification, data, and records
Log information
User documentation
Library and supporting software
Bug reports, etc.
12. Version, Variant, and Revision
Version: a CI at one point in its
development, includes revision
and variant
Revision: a CI linked to
another via revision-of
relationship, and ordered in
time
Variant: functionally equivalent
versions, but designed for
different settings, e.g. hardware
and software
Branch: a sequence of
versions in the time line
1.2
1.2
Win32 on x86
1.3
1.4
1.3.1.1
1.3.1.2
Solaris on
SPARC
1.3
1.4
13. How Versions are Stored
Full copy of each version
Delta (differences between two versions)
Forward delta
1.1
1.3
1.4
1.3
1.4
Reverse delta
1.1
1.2
Mixed delta
1.2
14. Configuration
An arrangement of functional CIs according to their
nature, version and other characteristics
Guaranteed to recreate configurations with quality
and functional assurance
Sometimes, configuration needs to record
environment details, e.g. compiler version, library
version, hardware platform, etc.
Simple examples
Ant buildfile, Makefile
15. Baseline
A collection of item versions that have been formally
reviewed and agreed on, a version of configuration
Marks milestones and serves as basis for further
development
Can only be changed via formal change
management process
Baseline + change sets to create new baselines
16. Workspace
An isolated environment where a developer can
work (edit, change, compile, test) without interfering
other developers
Examples
Local directory under version control
Private workspace on the server
Common Operations
Import: put resources into version control in repository
Update: get latest version on the default branch
Checkout: get a version into workspace
Checkin: commit changes to the repository
18. Version Control Models (2/3)
Model 1-Pessimistic: lock-modify-unlock
Problems:
Forget to unlock
Parallel work not
possible
Deadlock
Figure from svn-book
21. Change Control Process
Submission of Change Request (CR)
Technical and business evaluation and impact analysis
Approval by Change Control Board (CCB)
Engineering Change Order (ECO) is generated stating
changes to be made
criteria for reviewing the changed CI
CI’s checked out
Changes made and reviewed
CI’s checked in
22. Status Accounting
Administrative tracking and reporting of CIs in CM
system
Examples
Status of proposed changes
Status of approved changes
Progress of current version, on or behind schedule
Estimate of resources to finish one task
bugs identified by configuration audit
23. Configuration Audit
Independent review or examination to assess if a
product or process is in compliance with
specification, standards, contractual agreement, or
other criteria
Examples
Verifies that CIs are tested to satisfy functional
requirements
Verifies that baseline contains necessary and correct CI
versions
Ensures that changes made to a baseline comply with the
configuration status reports
24. Release Management
Creation and availability of a new version of
software to the public
Release format
Source code + build script + instructions
Executables packaged for specific platforms
Other portable formats: Java Web Start, plugins
Patches and updates: automatic, manual
Release content
Source and/or binary, data files, installation scripts,
libraries, user and/or developer documentation, feedback
programs, etc.
25. Make a CM Plan
Standards
IEEE Std 828 (SCM Plans), ANSI-IEEE Std 1042 (SCM), etc.
CM plan components
What will be managed (list and organize CIs)
Who will be responsible for what activities (roles and tasks)
How to make it happen (design processes for change requests,
task dispatching, monitoring, testing, release, etc.)
What records to keep (logs, notes, configurations, changes, etc.)
What resources and how many (tools, money, manpower, etc.)
What metrics to measure progress and success
26. CM Tools
Version control
Bug tracking
Bugzilla, Mantis Bugtracker, Rational ClearQuest
Build
RCS, CVS, Subversion, Visual Source Safe, Rational ClearCase
GNU Make and many variants, Ant
Project management
Sourceforge.net, freshmeat.net, GForge, DForge
27. Reference and Further Reading
Reference
Introduction to Configuration Management, lecture slides for
COMP3100/3500, Ian Barnes, the Australian National University.
Software Configuration Management, Center for Development of
Advanced Computing, Mumbai at Juhu, India.
Concepts in Configuration Management Systems, Susan Dart,
CMU.
Software Configuration Management: A Roadmap, Jacky
Estublier, CNRS, France.
Further Reading
Software Engineering, a Practitioner’s Approach (6th), part 4,
Roger Pressman.
Code Complete (2nd), Steve McConnel.
http://cmcrossroads.com/
Implementing and Integrating PDM and SCM, Ivica Crnkovic et al.
Version Control with Subversion, Ben Collins-Sussman et al.