Class-oriented metrics – Weighted methods per class, depth of the inheritance tree, number of children, coupling, response for class, lack of cohesion.

Slides:



Advertisements
Similar presentations
PROCESS FRAMEWORK Lecture - 3. Topics covered PROCESS FRAMEWORK PROCESS MODELS DIFFERENCE.
Advertisements

Chapter 2 The Software Process
Capability Maturity Model (CMM) in SW design
Computer Engineering 203 R Smith Process/Plan Model 7/ Development Process Models Development Process Models are different ways to look at the processes.
SOFTWARE ENGINEERING LECTURE-3 CSE-477.
1 R&D SDM 1 Software Project Management Capability Maturity Model 2009 Theo Schouten.
CMMI Overview Quality Frameworks.
Software Process and Product Metrics
Organizational Project Management Maturity: Roadmap to Success
Capability Maturity Model
Chapter : Software Process
Software Quality SEII-Lecture 15
Process: A Generic View n A software process  is a roadmap to building high quality software products.  provides a framework for managing activities.
Capability Maturity Model. Reflection Have you ever been a part of, or observed, a “difficult” software development effort? How did the difficulty surface?
Software Engineering II Lecture 1 Fakhar Lodhi. Software Engineering - IEEE 1.The application of a systematic, disciplined, quantifiable approach to the.
Capability Maturity Model Part One - Overview. History Effort started by SEI and MITRE Corporation  assess capability of DoD contractors First.
Chapter 2 The process Process, Methods, and Tools
Dillon: CSE470: SE, Process1 Software Engineering Phases l Definition: What? l Development: How? l Maintenance: Managing change l Umbrella Activities:
N By: Md Rezaul Huda Reza n
Software Project Management Lecture # 8. Outline Earned Value Analysis (Chapter 24) Topics from Chapter 25.
1 Chapter 2 The Process. 2 Process  What is it?  Who does it?  Why is it important?  What are the steps?  What is the work product?  How to ensure.
J. R. Burns, Texas Tech University Capability Maturity Model -- CMM n Developed by the Software Engineering Institute (SEI) in 1989 –SEI is a spinoff.
Software System Engineering: A tutorial
Introduction to Software Engineering LECTURE 2 By Umm-e-Laila 1Compiled by: Umm-e-Laila.
Chapter 2 Process: A Generic View
Software Engineering Lecture # 17
1.  Describe an overall framework for project integration management ◦ RelatIion to the other project management knowledge areas and the project life.
Software Project Management Lecture # 7. What are we studying today? Chapter 24 - Project Scheduling  Effort distribution  Defining task set for the.
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 25 Slide 1 Process Improvement l Understanding, Modelling and Improving the Software Process.
Chapter 3 Project Management Concepts
Software process improvement Framework for SPI SPI support groups, maturity and immaturity models Assessment and gap analysis Education and training Selection.
ISM 5316 Week 3 Learning Objectives You should be able to: u Define and list issues and steps in Project Integration u List and describe the components.
Software Project Management By Deepika Chaudhary.
Thomas L. Gilchrist Testing Basics Set 4: Strategies & Metrics By Thomas L. Gilchrist, 2009.
Georgia Institute of Technology CS 4320 Fall 2003.
SWEN 5130 Requirements Engineering 1 Dr Jim Helm SWEN 5130 Requirements Engineering Requirements Management Under the CMM.
Software Engineering - I
Process: A Generic View
Example Incident Mgmt Initiation No recording of Incidents Users can approach different departments Solutions of previous incidents are not available.
Cmpe 589 Spring 2006 Lecture 2. Software Engineering Definition –A strategy for producing high quality software.
University of Southern California Center for Systems and Software Engineering Software Metrics and Measurements Supannika Koolmanojwong CS577 1.
SOFTWARE PROCESS AND PROJECT METRICS. Topic Covered  Metrics in the process and project domains  Process, project and measurement  Process Metrics.
Ch-1 Introduction The processes used for executing a software project have major effect on quality of s/w produced and productivity achieved in project…
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
Page 1 The Capability Maturity Model (CMM) distinguishes between immature and mature software organizations. Immature software organizations are typically.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Software Engineering Lecture # 1.
Making knowledge work harder Process Improvement.
Unit – I Presentation. Unit – 1 (Introduction to Software Project management) Definition:-  Software project management is the art and science of planning.
Software Engineering (CSI 321) Software Process: A Generic View 1.
Continual Service Improvement Methods & Techniques.
CMMI Overview Quality Frameworks. Slide 2 of 146 Outline Introduction High level overview of CMMI Questions and comments.
Company LOGO. Company LOGO PE, PMP, PgMP, PME, MCT, PRINCE2 Practitioner.
Capability Maturity Model. CS460 - Senior Design Project I (AY2004)2 Immature Organisations Software processes are often rigorously followed. Organisation.
1 Software Engineering Muhammad Fahad Khan Software Engineering Muhammad Fahad Khan University Of Engineering.
Capability Maturity Model. What is CMM? n CMM: Capability Maturity Model n Developed by the Software Engineering Institute of the Carnegie Mellon University.
1 Week 3 Software Engineering Spring Term 2016 Marymount University School of Business Administration Professor Suydam.
Project Management BBA & MBA
School of Business Administration
CS4311 Spring 2011 Process Improvement Dr
Software Engineering (CSI 321)
د. حنان الداقيز خريف /28/2016 Software Quality Assurance ضمان جودة البرمجيات ITSE421 5 – The components of the SQA.
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
Software Process Improvement
Software Engineering Lecture 16.
Software Engineering I
Capability Maturity Model
Chapter 30 Software Process Improvement
Capability Maturity Model
Presentation transcript:

Class-oriented metrics – Weighted methods per class, depth of the inheritance tree, number of children, coupling, response for class, lack of cohesion Component-level design metrics – Cohesion, coupling, and complexity Operation-oriented metrics – Average operation size, operation complexity average number of parameters per operation Design metrics for WebApps Metrics for source code Metrics for object-oriented testing Metrics for maintenance 2

Triple constraint Effective software process can be defined in effective manner Assessment of existing process based on the defined effective process Meaningful strategy to transform the process It is not free Reduced costs after the process improvement 3

4 Figure source: Software Engineering: A Practitioner’s Approach, R. S. Pressman, 7 th ed., p. 788

Quality certifiers – Process quality leads to product quality Formalists – Process workflow, modeling languages Tool advocates – Tool-oriented Practitioners – Project-level planning and metrics Reformers – Organizational change, human issues Ideologists – Suitability for particular domain or organization structure 5

Overall indication of process maturity Capability maturity model Level-5, Optimized – Quantitative feedback to identify process weaknesses – Pro-active approach to strengthen it – Software processes are evaluated and updated to prevent known types of defects from recurring Level-4, Managed – Detailed process and product metrics – Meaningful variations in process performance can be distinguished from noise – Trends can be predicted in process and product quality 6

Level-3, Defined – Processes are documented, standardized, and integrated into a standard software process – All projects follow an approved, customized version of process Level-2, Repeatable – Basic processes are established to track cost, schedule, and functionality – Planning and managing new products is based on experience Level-1, Initial – Few processes are defined – Success depends on individual efforts 7

Level-0, Negligent – Failure to allow successful development process – All problems are perceived to be technical – Managerial and quality assurance activities are considered as overhead Level-1, Obstructive – Counterproductive processes are imposed – Processes are rigidly defined – Adherence to the form is stressed – Status quo, no power delegation 8

Level-2, Contemptuous – Disregard for good software engineering – Complete schism between software development activities and process improvement activities – No training program Level-3, Undermining – Total neglect of own charter – Conscious discrediting of peer organization’s process improvement efforts – Rewarding failure and poor performance 9

Who need SPI – Large organizations? How to initiate the process SEI proposed IDEAL – Initiating, Diagnosing, Establishing, Acting, and Learning Another approach – Look in the mirror, then get smarter, select the process model, instantiate the model, evaluate what has been done 10

Before starting the journey, know precisely where you are First road-map activity – assessment – Uncover strengths and weaknesses – Examine existing generic mechanisms / process activities – Is the objective of the action clearly defined? – Are work products required as input and produced as output identified and described? – Are the work tasks to be performed clearly described? – Are the people who must perform the action identified by role? – Have metrics for the action been established? – Are tools available to support the action? 11

Focus on the following attributes Consistency – Important activities, actions, and tasks applied Sophistication – Level of sophistication for management and technical actions performed Acceptance – Software process and SE practice acceptance by management and technical staff Commitment – Management commitment to provide resources to achieve above attributes 12

Generic concepts and methods – Focus on managers and practitioners – Process and practice – Intellectual tools to apply process effectively and to make rational decisions about improvements Specific technology and tools – Focus on practitioners – Training for tools used in process Business communication and quality-related topics – Focus on all stakeholders – “soft” topics – Better communication and quality 13

Suitable process model Set of framework activities to be applied Major work products to be produced Quality assurance checkpoints to assess progress Focus on weaknesses Consensus is difficult Bad choice can do more harm than good Once a choice is made, efforts should be done 14

Software process redesign Feel of change Sometimes entirely new process is recommended Substantial organizational and technological transition is involved If changes are minor, process migration Incremental migration is more effective strategy 15

Evaluation occurs throughout SPI Qualitative factors – Management and practitioners’ attitudes Quantitative metrics – Product related metrics 16

SPI is a risky undertaking Lack of management support Cultural resistance by technical staff Poorly planned SPI strategy Overly formal approach to SPI Selection of inappropriate process Risk management at three points – Prior to the initiation of SPI road map – During the execution of SPI activities – During the evaluation activity that follows the initiation 17

Risk categories – Budget and cost – Content and deliverables – Culture – Maintenance of SPI deliverables – Mission and goals – Organizational management – Organizational stability – Process stakeholders – Schedule for SPI developments – SPI development environment and process – SPI project management and staff 18

Management commitment and support – Organizational and culture changes – Senior business managers should recognize the importance of software – Technical managers should be involved in the development of local SPI strategy Staff involvement – SPI cannot imposed top down or from outside Process integration and understanding – Process should be integrated with other business processes and requirements 19

A customized SPI strategy – Consider the local environment Solid management of the SPI project – SPI is a project like any other – Project management 20

Software process improvement Framework for SPI SPI support groups, maturity and immaturity models Assessment and gap analysis Education and training Selection and justification Installation / migration Evaluation Risk management Critical success factors 21