sentenz / convention

General articles, conventions, and guides.
https://sentenz.github.io/convention/
Apache License 2.0
4 stars 2 forks source link

Create an article about `Software Standards` #334

Open sentenz opened 3 months ago

sentenz commented 3 months ago

Software Standards

Software standards are agreed-upon guidelines and specifications that ensure the quality, interoperability, and efficiency of software development processes and products. These standards can be set by international organizations, industry groups, or de facto practices in the software community.

Software Standards ensure compliance with legal and regulatory requirements, enhance cybersecurity posture, and maintain high levels of quality in software products and processes. Adhering to software standards improves collaboration, facilitates maintenance and scalability of software systems.

1. Category

1.1. Software Compliance Standards

1.1.1. ISO/IEC 12207: Software Lifecycle Processes

This standard defines a framework for software lifecycle processes, covering the planning, development, operation, maintenance, and disposal of software products. It includes processes for project management, quality assurance, configuration management, and risk management.

1.1.2. SOX (Sarbanes-Oxley Act)

A U.S. federal law aimed at improving corporate governance and accountability, particularly in financial reporting. It mandates strict reforms to improve financial disclosures and prevent accounting fraud, affecting software systems involved in financial reporting and data management.

1.1.3. HIPAA (Health Insurance Portability and Accountability Act)

U.S. legislation that provides data privacy and security provisions for safeguarding medical information. It requires healthcare organizations to implement controls to protect patient data from unauthorized access and breaches.

1.1.4. GDPR (General Data Protection Regulation)

An EU regulation that governs data protection and privacy for individuals within the European Union. It imposes strict guidelines on how organizations handle personal data, including requirements for data consent, processing, storage, and breach notification.

1.1.5. PCI DSS (Payment Card Industry Data Security Standard)

A set of security standards designed to ensure that all companies that process, store, or transmit credit card information maintain a secure environment. It includes requirements for network security, access control, and regular monitoring and testing.

1.1.6. FERPA (Family Educational Rights and Privacy Act)

A U.S. federal law that protects the privacy of student education records. It grants parents and students certain rights regarding access to and control over educational information.

1.1.7. FISMA (Federal Information Security Management Act)

A U.S. federal law that requires federal agencies to develop, document, and implement information security programs to protect their information and information systems. It emphasizes risk management and regular audits.

1.2. Cybersecurity Standards

1.2.1. ISO/IEC 27001: Information Security Management System (ISMS)

This standard specifies requirements for establishing, implementing, maintaining, and continually improving an ISMS. It includes risk assessment and management practices to protect information assets.

1.2.2. NIST SP 800-53: Security and Privacy Controls for Federal Information Systems

A NIST publication providing a catalog of security and privacy controls for federal information systems and organizations. It helps in selecting and specifying security controls for systems and organizations.

1.2.3. NIST Cybersecurity Framework (CSF)

A voluntary framework developed by NIST to improve cybersecurity risk management. It includes guidelines and best practices for identifying, protecting, detecting, responding to, and recovering from cyber incidents.

1.2.4. OWASP (Open Web Application Security Project)

A nonprofit foundation that works to improve the security of software. OWASP provides a list of the top ten security risks for web applications, as well as tools and resources for improving web security.

1.2.5. CIS Controls (Center for Internet Security Controls)

A set of best practices for securing IT systems and data against cyber attacks. These controls are prioritized and provide specific and actionable recommendations for improving cybersecurity.

1.2.6. SOC 2 (Service Organization Control 2)

A framework for managing customer data based on five "trust service principles": security, availability, processing integrity, confidentiality, and privacy. It is used by service providers to demonstrate their ability to manage data securely.

1.2.7. ISO/IEC 27002: Code of Practice for Information Security Controls

Provides guidelines for implementing commonly accepted information security controls, including policies, processes, organizational structures, and software and hardware functions.

1.2.8. ISA/IEC 62443: Security for Industrial Automation and Control Systems

A series of standards addressing cybersecurity in industrial automation and control systems. It provides a comprehensive framework for securing industrial systems and networks.

1.2.9. NIS2 (Network and Information Systems Directive 2)

An EU directive aimed at enhancing the overall level of cybersecurity across the EU by improving the resilience of critical infrastructure. NIS2 expands the scope of its predecessor, the NIS Directive, to include more sectors and introduces stricter security and reporting requirements.

1.3. Quality Standards

1.3.1. ISO/IEC 25010: System and Software Quality Models

Defines a quality model for evaluating software and system products. It includes characteristics such as functionality, reliability, usability, efficiency, maintainability, and portability.

1.3.2. ISO 9001: Quality Management Systems

A standard that specifies requirements for a quality management system (QMS). It helps organizations ensure they meet customer and regulatory requirements and improve customer satisfaction.

1.3.3. IEEE 829: Standard for Software and System Test Documentation

Provides a standardized approach to test documentation, including templates and guidelines for creating test plans, test design specifications, test case specifications, and test procedure specifications.

1.3.4. IEEE 730: Standard for Software Quality Assurance Plans

Specifies the format and content of software quality assurance (SQA) plans. It includes guidelines for planning, implementing, and assessing the effectiveness of SQA activities.

1.3.5. CMMI (Capability Maturity Model Integration)

A process level improvement training and appraisal program. It helps organizations improve their processes and develop capabilities that result in higher performance and better quality.

1.3.6. Six Sigma

A set of techniques and tools for process improvement, aiming to reduce defects and variability in processes. It uses statistical methods to identify and eliminate causes of errors.

1.3.7. TMMi (Test Maturity Model integration)

A framework for test process improvement. It provides a structured approach for evaluating and improving the maturity of an organization's testing processes.

1.3.8. ISO/IEC 9126: Software Engineering - Product Quality

A standard that defines a model for software product quality, including six characteristics: functionality, reliability, usability, efficiency, maintainability, and portability.

1.3.9. ASQ (American Society for Quality) Standards

Various standards related to quality management and performance excellence. They provide guidelines and best practices for improving quality across different industries.

1.3.10. ISO/IEC 15504 SPICE (Software Process Improvement and Capability Determination)

SPICE provides a framework for assessing and improving software development processes. It helps organizations determine their current capability and identify areas for improvement across various process dimensions such as project management, engineering, and support.