Top Software Model Processes You Should Know

To have an efficient organization at developing software products and services a model should be follow to have order in its development process make the most accurate estimations possible, being efficient and learning which improvements can be made, so this blog will give a quick introduction to a number of Models.

CMMI

CMMI stands for Capability Maturity Model Integration, it is a is a process level improvement training and appraisal program, it measures the maturity of an organization’s processes in software development.

CMMI starts with an appraisal process that evaluates 3 areas:

  • process and service development
  • service establishment and management
  • product and service acquisition

CMMI breaks organizational maturity into five leves

  1. Initial
    1. Processes are viewed as unpredictable and reactive. work gets done but it’s often delayed and over budget
  2. Managed
    1. There’s a level of project management achieved
    2. Projects are “planned, performed, measured and controlled”
    3. There’s still issues to address
  3. Defined
    1. Organizations are more proactive than reactive
    1. The organization has standards use in all across itself
    2. Shortcomings are understood, and understands how to address them and what the goal is for improvement.
  4. Quantitatively managed
    1. This stage is more measured and controlled
    2. Ahead of risks, with more data-driven insight into process deficiencies
  5. Optimizing
    1. organization’s processes are stable and flexible. At this final stage, an organization will be in constant state of improving and responding to changes or other opportunities

PSP (Person Software Process)

Structured development process that is designed to help software engineers to:

  • Improve their estimating and planning skills.
  • Make commitments they can keep.
  • Manage the quality of their projects.
  • Reduce the number of defects in their work.

PSP training follows a evolutionary methods, its levels are:

  • PSP0 has 3 phases:
    • Planning
    • Development
      • Design, code, compile, tests
    • Post Modern
      • engineer ensures all data for the projects has been properly recorded and analysed
    • PSP0.1 advances the process by adding a coding standard, a size measurement and the development of a personal process improvement plan
  • PSP1
    • Introduces estimating and planning
  • PSP2
    • Quality management and design

One of the core aspects of the PSP is using historical data to analyze and improve process performance. PSP data collection is supported by four main elements:

  • Scripts
  • Measures
  • Standards
  • Forms

TSP (Team Software Process)

TSP improves the quality and productivity of engineering teams and helps them develop software intensive products at timely and cost effective manner. Designed for use with teams of 2 to 20 members, and the larger multi-team TSP process is designed for teams of up to about 150 members

TSP can be applied in all aspects of software development.

TSP indicates that a self directed team should have the following qualities:

  • Understand product and business goals
  • Produces their own plans for addressing the goals
  • Makes their personal commitments
  • Directs their own projects
  • Consistently uses processes and methods that they select
  • Manages quality

TSP follows a cycle, first it begins with a planning process called launch, led by a coach and the team establishes goals, defined team roles, asses risks, estimate effort, allocate tasks and produce a team plan. next comes an execution phase, developers track planned and actual effort, schedule, and defects meeting regularly to report status and revise plans. The cycle ends with a Post Mortem to assess performance, revise planning parameters, and capture lessons learned for process improvement.

ISO-15504

Services are outputs of process by identifying those processes we can improve the services, ISO-15504 helps us achieve that, it is a set of technical standards document is for the computer software development process and related business management functions and is the reference model for the maturity models, assessors can give an overall determination of the organization’s capabilities for delivering products.

An assessment process must be done and the report will result in one the six classes levels

  1. Incomplete (level 0)
    1. The process is not implemented or fails at its purpose
  2. Performed (level 1)
    1. The process is performed and achieves it purpose
  3. Managed (level 2)
    1. Process is managed and results are specified, controlled and maintained
  4. Established (level 3)
    1. Process defined and use throughout the organization
  5. Predictable (level 4)
    1. Executed consistently with defined limits
  6. Optimizing (level 5)
    1. Process is continuously improved to meet currently and projected goals

MOPROSOFT

Moprosoft is a model of software processes for the Software Mexican industry, it is oriented for small and medium size business or internal areas of development and maintenance of software. It considers 3 levels of organization:

  • Business management
  • Management
    • Management of processes, projects, and management of materials
    • It also oversees human resources, services of the organization, infrastructure and knowledge of the business.
  • Operation

IDEAL METHOD

IDEAL stands for Initiating, Diagnosing, Establishing, Acting & Learning. IDEAL serves as a roadmap for initiating, planning, and implementing process improvement actions in the context of the CMMI product suite, it is a process-improvement and defect-reduction methodology.

Each letter of IDEAL is phase of the roadmap

  • Initiating
    • Lay groundwork for improvement effort
    • Usually is a response of a stimulus which shows an urgency the change the current process
    • In response the appropriate resources and support is given to get the change needed.
  • Diagnosing
    • It gives and indication on where the organization is relative to the place it hopes to be.
    • Analysis is performed to baseline the current practices and to probe potential improvement opportunities.
    • For the CMMI Product Suite this is a SCAMP Appraisal, for ISO 15504 an assessment.
  • Establishing
    • Planning the specifics of how to reach the goal
    • recommendations of the analysis are prioritized, change implementation teams are established, and plans are developed to conduct the activities.
  • Acting
    • Do the steps indicated in the plan
  • Learning
    • Learn from the experience and improve at adopting new improvements

Leave a comment

Design a site like this with WordPress.com
Get started