Here's a breakdown of the Software Engineering Institute's (SEI) Capability Maturity Model Integration (CMMI) framework elements, particularly relevant to the Unified Process (UP) and other structured methodologies: Framework Elements: Life Cycle Phases: Inception: Focuses on establishing the project's vision, scope, business case, and feasibility. Elaboration: Defines the architecture, refines requirements, and plans the remaining project. Mitigates high-risk elements. Construction: Iteratively develops and integrates the bulk of the software, building working versions. Transition: Deploys the software to the user community and ensures operational readiness. (Note: Your request mentioned "training phase" which often aligns with Transition activities.) Artifacts of the Process: The Artifact Sets (Categories): Management Artifacts: Pertain to project planning, tracking, and control (e.g., business case, project plan, risk list). Engineering Artifacts...
Evolution of software economics. short and efficient: The evolution of software economics reflects a shift from a "craft" to a more industrialized, predictable process. Early Days (1960s-1970s - Conventional/Craftsmanship): Characteristics: Custom tools, custom processes, primarily custom components built in primitive languages. Economics: Highly unpredictable; cost, schedule, and quality objectives were frequently underachieved. Focus was on basic analysis and coding. Transition (1980s-1990s - Software Engineering): Characteristics: Emergence of repeatable processes and off-the-shelf tools. Higher-level languages became prevalent. Some commercial components (OS, databases, networking) were adopted. Economics: Still somewhat unpredictable, but improvements in process and tooling started to offer better control. Software cost models like COCOMO emerged to estimate effort based on factors like size, process, personnel, environment, and quality. Modern Practices (2000...
Iterative Process Planning: Instead of a single, rigid plan, this involves continuous refinement of project plans in small cycles (iterations). Each iteration builds on the last, allowing for flexibility, early feedback, and adaptation to changing requirements and risks. This is a hallmark of Agile methodologies. Project Organizations and Responsibilities: Defines the roles, responsibilities, and reporting structures within a software development team (e.g., project manager, architects, developers, testers). It also addresses how teams are structured (e.g., functional, matrix, cross-functional) to maximize efficiency and communication. Process Automation: Leveraging tools and scripts to automate repetitive and error-prone tasks across the software development lifecycle. This includes automated builds, testing (Continuous Integration/Delivery - CI/CD), deployment, environment provisioning (Infrastructure as Code), and reporting, significantly boosting efficiency and quali...
Comments
Post a Comment