Skip to main content

Systems development: Systems life cycle and development frameworks

Image

About this sub-guideline

This sub-guideline is part of the guideline Systems development. Refer to the main guideline for context and an overview.

This sub-guideline focuses on the systems life cycle and development frameworks for AI-based systems in parliamentary contexts. It provides an overview of the AI systems life cycle, highlighting its importance in ensuring structured and responsible AI development.

This sub-guideline outlines the benefits of adopting a systematic life cycle approach. It also offers guidance on evaluating external AI development frameworks, covering aspects such as ease of use, community support, performance, model support and deployment readiness.

This sub-guideline is intended to help parliamentary IT professionals make informed decisions about AI development processes and tool selection, ultimately supporting the effective and responsible implementation of AI technologies in legislative environments.

The AI systems life cycle

The life cycle of an AI system is a sequential list of steps, practices and decisions that drive the development of AI-based solutions. Having a well-defined life cycle is vital for parliaments that are developing their own AI-based systems and tools, as it provides a structured and systematic approach to building, deploying and maintaining ethical AI technologies.

Specifically, adopting an AI systems life cycle approach offers the following benefits:

  • Increased success rate: Following each essential step in the development of an AI system improves the chances of project success.
  • Risk reduction: Identifying potential issues early in the process helps to mitigate risks and prevent costly setbacks.
  • Improved efficiency and productivity: An organized project timeline makes work smoother, ensuring that all team members understand their roles and responsibilities at each stage.
  • Enhanced quality: Completeness and rigour at each stage of the life cycle lead to higher-quality AI systems.
  • Better resource allocation: AI projects require significant resources, including time, human expertise and computational power. Properly identifying and balancing these resources ensures that they are used effectively throughout the project.

External development frameworks

There are an increasing number of external AI development frameworks that parliaments can use. These consist of building blocks and integrated software libraries that make it easier to develop, train, validate and deploy AI solutions through a high-level programming interface.

The natively pre-configured blocks and functions provided by these frameworks speed up implementation time. By allowing developers to solve tasks by customizing existing blocks without having to start from scratch, these frameworks also improve productivity and algorithm quality. Moreover, using standard frameworks makes it easier to integrate AI features with a great variety of application platforms and domains.

In order to compare and evaluate different external AI development frameworks, parliament must understand their characteristics and determine their suitability for its workflows and business needs. It is advisable to review specific frameworks for specific use cases, and to compare options through experimentation.

Key considerations for this decision-making process are detailed below.

Ease of use

  • Documentation: Quality, clarity and comprehensiveness of the documentation
  • Learning curve: How easy it is to start using the framework, including the availability of tutorials and community support
  • API design: Simplicity and intuitiveness of the API

Community and support

  • Community size: The number of users and developers contributing to the framework
  • Support: The availability of forums, user groups and other support channels
  • Updates: The frequency of updates, how many known issues and vulnerabilities exist, and how actively the framework is maintained and improved 

Performance

  • Speed: How quickly models can be updated for training and inference
  • Scalability: The ability to manage large data sets and complex models, and support for distributed training
  • Optimization: Built-in features for optimizing and tuning model performance and resource usage

Model support

  • Model variety: The range of supported model types (neural networks, decision trees, etc.)
  • Pre-trained models: The availability and variety of pre-trained models that can be fine-tuned or used out of the box
  • Customization: Flexibility in defining and experimenting with custom models and architectures

Tooling and integration

  • Ecosystem: The availability of complementary tools for data preprocessing, visualization and deployment
  • Compatibility: Integration with data-handling libraries, visualization tools, deployment platforms, etc.
  • Interoperability: Support for importing/exporting models between different frameworks

Deployment and production readiness

  • Deployment options: Ease of deploying models to different environments (cloud, edge, mobile)
  • Serving: Support for model serving and inference in production settings
  • Monitoring: Tools for monitoring model performance and detecting issues in production
  • Data protection regulations: Assurance that data classification, retention and residency rules are followed

Licensing and cost

  • Open-source versus proprietary: Whether the framework is open-source or commercial
  • Licensing terms: Any restrictions or requirements imposed by the licence
  • Cost: The potential costs associated with using the framework, especially for proprietary options

Hardware support

  • GPU/TPU support: Compatibility with various hardware accelerators
  • Distributed computing: Support for running on multiple GPUs or across a cluster of machines

Extensibility

  • Plugins: The availability of plugins or extensions for added functionality
  • APIs for custom extensions: The ability to write custom extensions or integrate third-party tools

Scalability

  • Scaling up and out: Support for horizontal and vertical scaling (manual or automatic)
  • Performance: Load testing and simulations to measure the performance of the framework
  • Cost: The ability to set costing limits in the event that the system needs to scale

Reproducibility

  • Versioning: Tools for model and data versioning to ensure the reproducibility of outcomes
  • Experiment management: Support for tracking experiments and managing their results

Security

  • Security features: Built-in security features for safe deployment and model usage
  • Compliance: Compliance with industry standards and regulations

The Guidelines for AI in parliaments are published by the IPU in collaboration with the Parliamentary Data Science Hub in the IPU’s Centre for Innovation in Parliament. This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International licence. It may be freely shared and reused with acknowledgement of the IPU. For more information about the IPU’s work on artificial intelligence, please visit www.ipu.org/AI or contact [email protected].