1. Trang chủ
  2. » Công Nghệ Thông Tin

Lecture Software process improvement: Lesson 22 - Dr. Ghulam Ahmad Farrukh

70 3 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 70
Dung lượng 462,77 KB

Nội dung

Lecture Software process improvement: Lesson 22 provide students with knowledge about: review up to mid-term; software process; characteristics of software processes; requires creativity; interactions between a wide range of different people; engineering judgment; background knowledge; experience;... Please refer to the detailed content of the lecture!

Review Up To Mid­Term Lecture #22 Process Process • Once someone has worked out how to solve  a problem, they can document the way in  which that solution was derived as a process • This then helps other people faced with  similar problems to get started on their own  solutions Examples of Processes ­ 1 • An instruction manual for a kitchen  dishwasher describes the process of using  that machine to clean dishes • A cookery book describes a set of processes  to prepare and cook various different types  of meals Examples of Processes ­ 2 • A procedures manual in a bank describes  the ways in which different banking  processes such as agreeing a personal loan,  correcting errors, etc. should be carried out • A quality manual for software development  describes the processes which should be  used to assure the quality of the software. It  may include descriptions of standards  which are basis for the quality checking Software Process Software Problems • Technical – Need a technical solution – Easy to understand and solve • Systemic – Need a process/management solution – Difficult to understand and solve Solution to Software Problems • Treat the software task as a process that can  be controlled, measured, and improved • Relate the required tasks, tools, methods  with skill, training, and motivation of  people involved Software Processes • Software engineering, as a discipline, has  many processes • These processes help in performing  different software engineering activities in  an organized manner Software Process • The software process is the set of tools, methods,  and practices that people use to produce (develop  and maintain)  software and associated products ,  e.g., project plans, design documents, code, test  cases, and user manuals • Where are the people? Aren’t they the most  important part of an organization? 10 CMMI Structure: One Model,  Two Representations Appendixes Appendixes Maturity Level 5     OID, CAR Maturity Level 4     OPP, QPM Maturity Level 3     REQD, TS, PI, VER,     VAL, OPF, OPD, OT,     IPM, RSKM, DAR Maturity Level 2     REQM, PP, PMC,     SAM, MA, PPQA, CM Overview     Introduction     Structure of the Model     Model Terminology     Maturity Levels, Common Features, and Generic Practices     Understanding the Model     Using the Model CMMI­SE/SW Staged Support     CM, PPQA, MA,      CAR, DAR Engineering     REQM, REQD, TS,     PI, VER, VAL Project Management     PP, PMC, SAM     IPM, RSKM, QPM Process Management     OPF, OPD, OT,     OPP, OID Overview Process Management     Introduction     PAs     Structure of the Model     ­  Goals     Model Terminology     ­  Practices     Capability Levels and Generic Model Components     Understanding the Model     Using the Model CMMI­SE/SW Continuous 56 56 CMMI Model Structure • Maturity Levels (staged representation) or  Capability Levels (continuous  representation) • Process Areas • Goals – Generic and Specific • Practices – Generic and Specific 57 • The CMMI product suite is at the forefront  of process improvement because it provide  the latest best practices for product and  service development and maintenance • The CMMI models improve the best  practices of previous models in many  important ways 58 Benefits of CMMI ­ 1 • CMMI best practices enable organizations  to do the following – More explicitly link management and  engineering activities to their business  objectives – Expand the scope of and visibility into the  product lifecycle and engineering activities to  ensure that the product or service meets  customer expectations 59 Benefits of CMMI ­ 2 – Incorporate lessons learned from additional  areas of best practices (e.g., measurement, risk  management, and supplier management) – Implement more robust high­maturity practices – Address additional organizational functions  critical to their products and services – More fully comply with relevant ISO standards 60 • Use CMMI in process improvement  activities as a – Collection of best practices – Framework for organizing and prioritizing  activities – Support for the coordination of multi­disciplined  activities that might be required to successfully  build a product – Means to emphasize the alignment of the process  improvement objectives with organization business  61 objectives Personal Software Process 62 What is PSP? • The PSP is a defined and measured  software process designed to be used by an  individual software engineer • The PSP was developed by Watts  Humphrey • Its intended use is to guide the planning and  development of software modules or small  programs, but it is adaptable to other  63 personal tasks • Like the SEI Capability Maturity Model for  Software, the PSP is based on process  improvement principles • While the CMM­SW was focused on  improving organizational capability, the  focus of the PSP is the individual engineer 64 Key Process Areas for PSP ­ 1 • • • • • • • Software project planning Software project tracking/oversight Software process focus Software process definition Integrated software management Software product engineering Peer reviews 65 Key Process Areas for PSP ­ 2 • • • • • Quantitative process management Quality management Defect prevention Technology change management Process change management 66 PSP in a Nutshell ­ 1 • Baselining your existing personal software  process • Developing a planning process for your  software development • Measuring software size as part of the  planning process • Estimating software size in advance 67 PSP in a Nutshell ­ 2 • Estimating the required schedule and  resources for software • Conducting appropriate measures of one’s  process • Conducting meaningful design and code  reviews • Performing software quality management 68 PSP in a Nutshell ­ 3 • Perform software design in a more formal  fashion • Verifying the design, using methods using  methods such as object state machines,  program tracing, etc • Scaling up the PSP to larger problems 69 Implementing PSP 70 ... Project Planning 21 Process? ?Modeling 22 Levels of? ?Software? ?Process? ? Models • Universal or U? ?Process? ?Models • Worldly or W? ?Process? ?Models • Atomic or A? ?Process? ?Models 23 Universal or U? ?Process? ?Models • U? ?process? ?models provide high­level ... Examples of? ?Software? ?Processes • Software? ?engineering development? ?process? ? (SDLC) • Requirements engineering? ?process • Design? ?process • Quality assurance? ?process • Change management? ?process 13 Process? ?Improvement 14 Process? ?Improvement Objectives... people involved Software? ?Processes • Software? ?engineering, as a discipline, has  many processes • These processes help in performing  different? ?software? ?engineering activities in  an organized manner Software? ?Process

Ngày đăng: 09/12/2022, 03:25