Upgrade to Pro — share decks privately, control downloads, hide ads and more …

IEEE12207

Avatar for Mahinth Christensen Mahinth Christensen
January 11, 2014
27

 IEEE12207

Avatar for Mahinth Christensen

Mahinth Christensen

January 11, 2014

Transcript

  1. Introduction to IEEE 12207 Introduction to IEEE 12207  Information

    technology - Software life cycle processes  Scope: Management of Software Development Projects  IT project management ISO/IEC 12207  IT software projects have a poor success record  YET ! The problems can be solved with this standard.
  2. Concepts from the ISO/IEC/IEEE 12207 standard can help the software

    director and the business in general to achieve greater success with their employees
  3. Knowledge from Standards & books:  IEEE Standard 12207:2008, Information

    Technology - Software Life Cycle Processes  IEEE Standard 1062, Recommended practice for software acquisition  IEEE Standard 1058, Standard for software project management plans  Books  Software engineering project management, Edited by R. Thayer, IEEE Computer Society, 1997.  Software Engineering by IAN Sommerville
  4. Professionalism and Economics  SW requirements  SW design 

    SW construction  SW testing  SW maintenance
  5. IT and software  Just about every modern product or

    service depends on software  Software intensive products/services include:  As local as embedded software  As wide as the World Wide Web  transportation of all kinds  financial markets
  6. Software competence  Companies dependent on IT projects need to

    master the software technology to stay competitive  Produce quality products that satisfies user needs  Meet committed costs  Meet the planned schedules
  7. Known Disadvantage  70 - 80 % of companies do

    not have a process able to support the demands of project control
  8. What is software engineering?  Software engineering is concerned with

    applying scientific principles and management skills to develop software intensive systems and products for use by society within the constraints of:  Time,  money,  technology,  quality,  business.
  9. Software Engineering  Business  Money  Technology  Quality

     Time Profit Budget Platform & Domain Reliability Schedule
  10. Why are software projects difficult ?  Invisible product 

    Lack of physical constraints  Inadequate systems engineering  Changing requirements  Co-ordination of intellect-intensive teams  Insufficient technical staff  Lack of project management skills
  11. Project Failure Reasons PLANNING:  Software requirements - not clear

     Cost & schedule estimation - difficult  Projects function - not planned  CM, QA, computing facilities  Planning viewed as “non-productive”
  12. Project Failure Reasons CONTROL:  poor methods for tracking progress

     poor indicators to measure  Productivity  Quality  Time
  13. Quotes  “IN MANY WAYS, MANAGING A COMPUTER PROGRAMMING PROJECT

    IS LIKE MANAGING ANY OTHER UNDERTAKING - IN MORE WAYS THAN MOST PROGRAMMERS BELIEVE. BUT IN MANY OTHER WAYS IT IS DIFFERENT - IN MORE WAYS THAN MOST PROFESIONAL MANAGERS EXPECT ”  “ .. the demand for software has grown at such an explosive rate, it now far outweighs the resources we have to produce it. ….. desperately needed software is not being developed…….. “ “ An interaction of factors has caused this ‘software gap’: accelerated demand for software, increased complexity of systems,labor shortages, and lack of adequate science and technology to support robust development. “
  14. ‘Interim Report to the President’, August, 1998  Software remains

    a major cause of system failures  Complexity is growing  Keeping up with new techniques & procedures ?
  15. Software engineering foundation Two types of software projects ( IEE12207)

     Development  Developing or modifying a software- intensive system to meet contractual requirements (satisfies user needs )  Acquisition  Contractually obtaining from a group ( supplier), a software-intensive system for use by another group (user)
  16. What is IEEE 12207 ?  The major world-wide standard

    for software related processes activities and tasks  Tailored for any organization or project  High level process architecture  An ‘inventory’ of processes from which to choose  For the first time a world wide agreement on what activities make up a software project
  17. 12207 Concepts Process Architecture  Modular: Handle all types of

    projects  Cohesion: One process for one major function  Responsibility: One process for one party
  18. Defining the project strategy  The first step is to

    choose/tailor a project life cycle by choosing the appropriate set of processes defined in ISO/IEC 12207  Waterfall,  Iterative,  Rapid Application Development,  Incremental
  19. Initiation - selecting a project  Requirements Requirements  Organization

    policy Organization policy & methods & methods  Legal Needs Legal Needs  Time Time  Process Standard Process Standard  Life Cycle Model Life Cycle Model Tailoring  Project Life Cycle  Project Plan  Contract Start Project
  20. Major Parties SUPPLIER Provides the Product to the parties ACQUIRER

    Acquires the Product OPERATOR USE R MAINTAINER Maintains the Software Product DEVELOPE R Defines the Developed Product
  21. The Acquisition Process  Defines the activities of the acquirer,the

    organization that acquirers a system, software product or software service  1. Initiation  2. RFP ( tender) preparation  3. Contract preparation and update  4. Supplier monitoring  5. Acceptance and completion
  22. Organizational processes PROJECT LIFE CYCLE Employed by organization to establish

    and implement an underlying structure of .. Processes and personnel, and continuously improve the structure and processes MANAGEMENT IMPROVEMENT INFRASTRUCTURE TRAINING
  23. Management process Activities:  Initiation and scope definition  Planning

     Execution and control  Review and evaluation  Closure “The purpose of the management process is to organize, monitor and control the initiation and performance of any processes or functions within the organization to achieve their goals and the business goals of the organization in an effective manner”
  24. Infrastructure process Objectives:  establish and maintain a well- defined

    software engineering environment (SEE)  tailor the SEE top the needs of the project  develop a SEE that supports project team members  implement a defined and deployed strategy for reuse “The purpose of the infrastructure process is to maintain a stable and reliable infrastructure that is needed to support the performance of any other process. .. May include hardware, software, methods, tools, techniques, standards, facilities for development, operation, or maintenance.”
  25. Management & Infrastructure process standards IEEE Std 982.1 - Standard

    dictionary of measures to produce reliable software IEEE Std 1045 - Software productivity metrics IEEE Std 1058 - Software project management plans IEEE Std 1045 - Recommended practice for the adoption of CASE tools ISO/IEC 14102 - Guidelines for the evaluation and selection of CASE tools Above Standards provide the detail of what to do
  26. Supporting processes PROJECT LIFE CYCLE Documentation Verification Configuration Management Validation

    Quality Assurance Joint Review Problem Resolution Audit Employed by any primary process or any supporting process
  27. Quality Assurance (QA) Objectives:  identify, plan and schedule QA

    activities  identify quality standards, methods and tools  identify resources and responsibilities  establish and guarantee independence of those..  perform the QA activities  apply organizational quality management systems “The purpose of the quality assurance process is to provide assurance that work products and processes comply with their specified requirements and adhere to their established plan”.
  28. Configuration Management Objectives:  identify, define and control all relevant

    items  control modifications  record and report status  ensure completeness of items  control storage handling , release and delivery “The purpose of configuration management is to establish and maintain the integrity of the work products of a process or product”.
  29. Making a Project a Success Planning  1. Requirements engineering

     documented  traceability  2. Task, cost and schedule determination based on requirements  3. Risk management, with problem tracking  4. Incremental development
  30. Making a Project a Success Control 5. Work packages with

    visible progress measurement  WBS, Work package specifications  Earned value tracking  6. Software metrics;  size, efforts, schedule, quality  7. Software configuration management  8. Software quality assurance and standards  9. Peer reviews (walk through and inspections)  10. Independent verification and validation  11. Software engineering assessments and capability evaluation
  31. Outlook for the future  Range of team skills on

    software projects:  Licensed Software Engineers  Certified software practitioners  Skilled software workers  A stable Software Engineering Model  A doubling of software workers  10 today to 50 or 100 in the future  with an adequate level of competence
  32. Conclusions  12207 provides a reference point for all types

    of IT projects containing software  It demands good PM practices  A basis for establishing a mature and successful process  A road map for process and project improvements