0% found this document useful (0 votes)
14 views33 pages

Part 1-3

The document outlines a project for developing AI-powered software aimed at enhancing urban efficiency and sustainability in smart cities. It details the project planning, software quality assurance, and ethical considerations, emphasizing the integration of AI and IoT for real-time data analysis and decision-making. Key deliverables include system architecture documentation, a functional software product, and a deployment plan to improve city management and infrastructure.

Uploaded by

Asif Ali
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views33 pages

Part 1-3

The document outlines a project for developing AI-powered software aimed at enhancing urban efficiency and sustainability in smart cities. It details the project planning, software quality assurance, and ethical considerations, emphasizing the integration of AI and IoT for real-time data analysis and decision-making. Key deliverables include system architecture documentation, a functional software product, and a deployment plan to improve city management and infrastructure.

Uploaded by

Asif Ali
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 33

Course: COMP1833 – Software Quality Management

Assignment Title: Software Quality Management for Smart City AI


Project

Group Members:

 Talha Rasheed (ID: 0013601296)


 Shahneil Ayaz (ID: 0013813331)
 Naveed Nasir (ID: 0013430873)
 Hardev Singh (ID: 001372306)

Instructor: []

University: []

Date: []
Table of Contents
Introduction.........…………………………………………………………………………………………………………………………………1

Part 1: Project Planning (20%) – Group Work…………………………………………………………….…………………………2

 Project Description
 Meeting Policy
 Discussion of Legal, Social, Ethical, and Professional Issues

Part 2: Software Quality Assurance (SQA) – Individual and Peer Review………………………………………………3

 Architectural Blocks
 Peer Review Report

Part 3: Software Quality Plan (SQP) – Group Work………………………………………………………………………………4

 Documentation
 Management

Part 4: Software Requirements Specification (SRS) and Use Cases – Individual Work…………………………5

 SRS
 Use Cases

Part 5: Black Box Testing and Risk Management – Individual Work………………………………………………………6

 Black Box Testing


 Risk Management

Conclusion……………………………………………………………………………………………………………………………………………7

References………………………………………………………………………………………………………………………………..…………8
1. Introduction
The development of AI-powered smart city software represents a major technological advancement aimed
at improving urban living through automation, efficiency and sustainability This project focuses on
intelligent software systems a artificial intelligence (AI) is used to improve city efficiency, public
infrastructure Build growth, and sustainable development Ensure that system design and planning
includes the integration of advanced AI algorithms, cloud-based data processing, and the Internet of
Things (IoT) to support real-time data analysis and decision-making Key applications include intelligent
traffic management, predictive maintenance, including energy efficiency and public safety management.
By tackling urban challenges such as congestion, pollution and infrastructure, the program aims to
improve citizens’ lives, while also providing data-driven insights to city officials

The scope of the project includes the design, development and testing of AI-powered software, including
system models, deployment models and test reports A design approach based on the IEEE 730-2014
standards will optimize the software, attracting attention emphasize operation, safety and maintenance.
The project also addresses ethical considerations such as data privacy and the responsible use of AI. By
the end of the project, the aim is to deliver a robust, secure and user-friendly smart city solution in line
with global trends and ethical guidelines

2. Part 1: Project Planning (20%) – Group Work

1.1 Project Description: AI-powered Smart City Software Product

Overview of the Project

The AI-powered smart city software product aims to create an integrated platform for managing and
optimizing urban infrastructure through the use of advanced artificial intelligence (AI) and machine
learning (ML) technologies Thus this platform improves city efficiency, To improve public infrastructure,
traffic congestion, It is also designed to tackle various urban challenges such as waste management,
energy consumption and security management Using AI, the software will enable real-time data analysis
and decision-making, providing city managers with actionable insights cities living conditions improve.
The solution will integrate various urban sub-systems such as transportation, energy management, public
safety and environmental monitoring, into one coordinated platform. It can use data from IoT sensors,
cameras, and other data sources to predict patterns, detect anomalies, and automate processes. Ultimately,
the platform will help cities operate more sustainably, reduce costs and improve the quality of life for
their residents (Bass, L., (2012).

System Architecture Diagram


System Design and Architecture

The AI-driven smart city software architecture follows a layered design, which is modular and scalable,
ensuring simplicity and ease of integration into future systems and technologies along with the following
key features (Sommerville, I. (2015).

Data Collection Criteria:


 This layer consists of sensors, IoT devices, cameras, and other data sources placed throughout the
city for real-time data collection. It collects data on traffic, environmental conditions (e.g., air
quality, temperature), energy consumption, and public safety (IEEE. (2014).

Data handling and storage:

 Data from various sources is transferred to a central processing unit, where it is cleaned,
transformed and stored. Advanced data processing techniques such as stream processing and
batch processing are used to efficiently handle the amount of incoming data. Data is stored in
cloud-based repositories to ensure scalability and accessibility (Sommerville, I. (2015).

AI and Machine Learning Tools:

 The heart of the system is AI and machine learning algorithms, which analyze the collected data
for predictions, insights and recommendations For example, machine learning models can predict
traffic congestion or predict energy consumption prediction of function. AI algorithms also help
identify patterns in data to identify anomalies, such as potential security threats or system flaws
(Bass, L., (2012).

Decision Support and Control level:

 This layer interacts with city managers and provides them with actionable insights and
recommendations. Dashboards and visualizations are used to present AI-generated data and
insights in an easy-to-understand format. The system also supports automation, such as adjusting
traffic lights in real time based on traffic data or energy efficiency based on demand forecasts
(Sommerville, I. (2015).

User Interaction Level:

 This level includes mobile application and web interfaces for residents and city officials.
Residents can access real-time information such as traffic conditions, public transit systems and
air quality indicators, while city officials can monitor system performance and make informed
decisions through an administrative dashboard (Beck, K. (2000).

The architecture is designed to be flexible and scalable, ensuring it can adapt to the city’s growing needs
and incorporate new technologies as they emerge.

Objective, Scope, and Deliverables


The main goals of smart city software product powered by AI are as follows (Bass, L., (2012).

 Enhancing urban efficiency: The software will improve the management of various urban
infrastructures, such as traffic, waste collection and energy consumption, resulting in more
efficient and sustainable urban operations
 Enhancing Public Infrastructure: Software that provides real-time information and automation
of services will improve the lives of city residents, including better traffic management, improved
public safety and more efficient use of resources
 Data-Driven Decision Making: The platform will enable city managers to make data-driven
decisions, strengthen governance and policy-making through predictive analytics and business
insights
 Scalability and flexibility: The system will be designed to meet the dynamic demands of
increasingly urban environments and support future integration of new technologies and data
sources (NIST. (2019).

The scope of the project includes developing a software system that integrates multi-city systems and
provides tools for data collection, processing, analysis and decision support The project initially focuses
on key areas such as traffic management, energy a implementation and public safety It can be extended to
other areas such as environmental monitoring

The deliverables of the project include:

 System Architecture and Design Documentation: Detailed documentation of system design,


architecture, and operating system.
 Functional software product: An optimized AI-powered platform that integrates city
management systems.
 User Interface (UI): User-friendly mobile web applications for residents and city officials.
 Testing and Evaluation: Extensive testing of the system to ensure it meets functional and
performance requirements.
 Deployment Plan: A roadmap for deploying software in a real-world city environment, including
deployment and integration strategies (Fowler, M. (2002).

2.2 Meeting Policy


Project Communication Flow Chart

Roles and responsibilities in meetings

Clear roles and responsibilities are essential to effectiveness in any meeting. Key roles include the
Chairperson, whose responsibility is to lead the meeting, set the agenda and ensure that it remains in
order; a stenographer, recording minutes and deeds; and stakeholders, who contribute by sharing ideas,
providing updates, and addressing relevant topics. The organizer ensures that the meeting adheres to the
timeline and helps maintain focus (ISO/IEC. (2011).

Frequency and type of meetings

Fortnightly meetings will be held to discuss project updates, challenges and upcoming projects. These
will be done in a blended manner, with a pre-provided set of schedules with individualization and options
to ensure full participation of all team members regardless of location, and each meeting will have goals
and outcomes defined to measure progress Humphrey, W. S. (1989).

Communication strategies
Communication between team members will be maintained via email for relevant discussions, messaging
sessions for quick updates (e.g., Slack), and shared collaboration tools (e.g., Google Drive) for
documentation and follow-up Will be enforced encourage ad hoc discussions on urgent matters in
addition to formal meetings Ensure that all communications are smooth and efficient (Gill, A. Q., (2006).

2.3 Discussion of Legal, Social, Ethical, and Professional Issues

Data Privacy and Security Risk Diagram

Privacy concerns

Privacy will be a major concern in implementing AI on a smart city platform. The system will collect a
wealth of data from the public, such as location, energy consumption and environmental conditions.
Appropriate measures, including data anonymity and user consent policies, should be in place to ensure
that individual privacy is respected and that unauthorized access to data is not permitted (NIST. (2019).

Data security issues

Ensuring data security is key in an AI-powered system. The platform will store sensitive data on cloud
servers, which can be vulnerable to cyberattacks. Strong encryption techniques, firewalls and secure
authentication protocols will be used to protect data integrity and prevent unauthorized access (Hazzan,
O., (2008).

The ethical implications of AI and its impact on users and managers

AI algorithms, while powerful, must be transparent, unbiased and unbiased. Ethical concerns arise when
AI systems make decisions that affect people’s lives without human oversight. AI can be biased in areas
such as traffic control or inadvertent resource allocation, which can be frustrating for some groups. Staff
and users should be trained in ethical guidelines and transparency practices to ensure that AI works
properly and does not harm vulnerable people (ILeveson, N. G. (2011).

3. Part 2: Software Quality Assurance (SQA) – Individual and


Peer Review
2.1 Architectural Blocks

Introduction

In an AI-powered smart city software platform, it is important to understand the underlying architecture
blocks and their data structures to ensure performance and scalability And the platform’s two main
applications are traffic management and energy optimization. This process relies on robust data structures
and interactions between system components to effectively deliver the desired results (Boehm, B. (1988).

1. Traffic Management Functionality

The traffic management system aims to improve traffic flow, reduce congestion, and improve safety by
analyzing real-time data from sensors, cameras, and traffic signals The building blocks involved in this
process are data collection, data processing, and decision-making (Kotonya, G., (1998).

Information gathering section


 The first architecture piece collects data from various sources such as traffic cameras, IoT
sensors, GPS systems in vehicles, public transport monitoring systems, etc. The system uses data
structures such as queues and arrays to buffer and organizes incoming data. For example, each
sensor can push data into a queuing system, allowing timely processing of the latest traffic data.
Arrays are used to store data on traffic, speed limits, and congestion meters, enabling efficient
retrieval (Fowler, M. (2002).

Data Processing Block

 This phase reviews the collected data and makes decisions based on previously defined
algorithms. Data structures such as graphs and hash maps are used to represent and manipulate
information. Graphs are particularly useful in traffic management, as they can represent routes,
intersections, and connections between them to help algorithms make optimal routing decisions
Hash maps store historical traffic patterns that can be used predicting traffic accidents at different
times of the day (Boehm, B. (1988).

Decision Making Block

 Once the data is processed, AI models, using neural networks or decision trees, decide on the best
signal timing, route recommendation, or traffic warning The connections between these pieces of
architecture is needed to enable dynamic traffic light adjustment based on real-time traffic data.
For example, if the system detects high levels of congestion in a particular area, the decision-
making process can optimize signal timing in that area to reduce traffic accidents (NIST. (2019).

2. Energy Optimization Functionality

The goals of the energy efficiency program are to manage the city’s energy efficiency, reduce waste, and
improve resource efficiency in homes, commercial buildings and public facilities Buildings here include
information receiving, gathering information and distributing energy (Bass, L., (2012).

Data acquisition section

 This category collects data from smart meters and IoT sensors installed in homes and commercial
buildings. The data collected includes power consumption, peak demand time and power status.
Data structures used for this phase include time series data structures, such as linked lists and
circular buffers, that efficiently store and obtain time-based energy consumption data These data
structures ensure that the system can analyze energy trends over time to forecast future demand
(Sommerville, I. (2015).

The data collection phase

 Once collected, the data are aggregated to provide a comprehensive view of energy consumption
in different parts of the city. In this section, matrix trees are used to organize and manipulate large
amounts of data. Matrices are particularly useful in collecting usage data for different areas, when
trees are used to represent hierarchical relationships, such as neighborhoods in cities, which
enable optimal resource allocation Thus this combination enables the system to identify areas of
high energy consumption and potential (Kotonya, G., (1998).

Energy distribution section

 By processing and analyzing the collected data, the Energy Sharing section ensures efficient
allocation of energy resources. This section uses graphs to represent energy networks, including
nodes representing substations and edges representing power lines. Optimization algorithms such
as linear programming or genetic algorithms are used to find the optimal energy allocation based
on estimated demand and real-time grid conditions These algorithms rely on data structures such
as priority row, min amount, which areas where energy needs to be conserved or redistributed
(Gill, A. Q., (2006).

Breakdown of Components and Interactions

Interaction between elements of both activities is key to achieving the desired results. In both systems, the
data collection block collects real-time data, which is then processed in either the data processing block or
the data collection block depending on the application Once the data is analyzed, it flows out within the
decision block (for traffic control) . or energy allocation block (for energy efficiency), where AI
algorithms make informed decisions based on processed data (Jureta, I. J., (2009).

For example, in a traffic monitoring system, data collected from sensors inform the system about traffic
congestion. Then AI machines make decisions, like changing traffic lights to reduce congestion.
Similarly, the energy consumption data collected in the energy efficiency system identifies high-demand
areas in the system, accordingly, the algorithm adjusts energy distribution to avoid consumption

Architectural blocks communicate seamlessly, ensuring real-time system capability, dynamically adapting
traffic patterns and energy consumption based on the latest input data This communication is the right
data structure the choice plays an important role in ensuring the efficiency and scalability of an AI -
powered smart city platform (Hazzan, O., (2008).

Summary

The storage of traffic management and energy efficiency applications in an AI-powered smart city
software platform relies on a robust and efficient data structure These blocks work together for storage ,
manage and disseminate information so that the system is effective and efficient Ensures that it works . A
well-designed interface between these components is essential for the platform to function properly,
enabling it to make decisions in real time.

2.2 Peer Review

Introduction

The purpose of this peer review is to evaluate the architectural pieces developed by one team member for
an AI-powered smart city software system. This study focuses on strengths, weaknesses and areas for
improving building design for two key applications: traffic management and energy efficiency (McGraw,
G. (2006).

Strengths

A clear and logical plan

 The architecture is well organized, with clearly defined components for data collection, data
processing and decision-making in the traffic management system, as well as data acquisition,
data storage and power generation work well within the system It plays a unique role. Such
modularity is important for systems requiring future renewal or expansion (Lee et al., 2020).

Effective use of data systems

 The use of graphs to model road networks in traffic management systems is a particular strength.
The graphs allow routing optimization and congestion analysis, which is critical for real-time
traffic management. Similarly, the inclusion of priority queues in the energy distribution phase
ensures that energy is delivered to critical areas with high demand, in line with best industry
practices for energy management (Ghasemi et al., 2021). ).

Simple connections between components


 The flow of logic from data collection to decision-making ensures smooth communication
between the pieces of the system. Real-time data collected from IoT sensors and cameras are
processed quickly, enabling instantaneous adjustments to traffic signals. This interaction
strengthens the system’s ability to respond robustly to changes in vehicle conditions, improving
overall system efficiency.

Weaknesses

A few issues with error handling

 Although the architecture provides clear data, it lacks an error handling mechanism. For example,
what happens if the sensor malfunctions or provides incorrect data? Adding an exception
handling block or redundancy system will improve the error resistance of the system (Zhou et al.,
2019).

Scalability problems for big data

 While using queues and linked lists in data collection blocks is efficient for small data loads,
large amounts of data from thousands of IoT devices can overwhelm these systems Advanced
data management needs to be considered large, such as distributed data queues or big data
systems like Apache Kafka about managing high data loads efficiently (Kumar et al., 2013).
2022).

Lack of privacy and security considerations

 Given the reliance on IoT sensors and public data, privacy and data security must come first. The
system design does not mention how sensitive user data (e.g., GPS location) will be protected.
The inclusion of data encryption techniques and GDPR compliance will strengthen privacy
protection and increase public trust (Sharma & Jindal, 2020).

Suggestions for Improvement

Enhance error handling capabilities

 Introduce error detection and correction components into the Data Collection block to detect and
correct sensor data anomalies. Using an auto-healing mechanism can automatically detect
damaged sensors and switch to backup sensors or trigger maintenance alerts.

Strengthen data-viewing for scalability


 Use message queues provided by Kafka or RabbitMQ to replace traditional queues and
interactive directories for real-time data access. These changes will increase the system’s ability
to handle large amounts of data, reducing potential peak-time complications.

Strengthen privacy and security measures

 Include data encryption techniques and use secure communication protocols (e.g. HTTPS) to
protect data in transit. Adding an access control layer can restrict access to sensitive user
information, ensuring that only authorized users or programs can access it.

Summary

The design of traffic management's energy optimization functionality shows a strong foundation, with
transparent communication between components and efficient use of data systems but will significantly
enhance system performance and safety by accommodating vulnerabilities controlling error handling,
scalability and data privacy. The implementation of the proposed improvements will lead to a robust,
future-proof AI-powered smart city environment.

3. Part 3: Software Quality Plan (SQP) – Group Work


3.1 Documentation

1. User Manual System

Effective user documentation is essential to ensure successful adoption and implementation of AI-
powered smart city software. This policy describes the format, types, and methods of issuing
documentation.

1.1 User Documentation

 User Manual: A comprehensive step-by-step guide that explains how end-users (citizens,
government officials, and employees) can interact with the system. Includes information on
system navigation, troubleshooting, and FAQs.
 Installation Guide: Step-by-step instructions for installing the software on different platforms
and devices.
 Quick Start Guide: A concise visual-based guide that highlights the basics and steps necessary
for new users to get started.
 Video Instruction: Short instructional videos for visual learners, covering program features,
usage, and best practices.
 Online Help Portal: A dynamic, searchable web-based help system that provides access to
instructions, FAQs, and all helpful information.

1.2 Copyright

 Audience-based design: The documents are designed for a variety of user groups, including
citizens, employees, and developers. Each consultant focuses on the needs and technical skills of
these groups.
 Language and Navigation: Clear, straightforward and non-technical language is used for users
with minimal technical background. WCAG 2.1 and other accessibility procedures will be
followed to ensure accessibility for persons with disabilities.
 Updates and version control: User documentation will be updated after each major system
release. Each document will be accompanied by a version number to ensure users can see the
most up-to-date content.

1.3 Methods of Delivery

 Built-in Help: Contextual help buttons in the software provide direct links to relevant
instructions.
 Website access: Documents will be available online, making them available 24/7.
 PDF Downloads: A variety of printable documents and guides are available for offline access.

2. Maintenance management strategies

Configuration Management (CM) is essential to maintaining the integrity, accuracy, and authority of
software’s documentation.

2.1 Translation Control System

 Tool usage: GitHub or GitLab repositories will be used to track changes to user documentation.
 Change tracking: Each update to the document is packaged as a new version, with a clear
mandatory message indicating the nature of the change (e.g., feature updates, bug corrections,
etc.).

The branching process requires adjustments to separate branches prior to merger with the main branch,
allowing for inspection and quality assurance.
2.2 Review and Approval Process

 Evaluation Stage: Books go through three evaluation stages—technical evaluation (accuracy),


editorial evaluation (clarity and grammar), and user evaluation (usability and understanding).
 Workflow approval: Changes are approved by project managers and subject matter experts
before being integrated into the main version.

2.3 Release and Renewal

 Planned changes: Document updates are aligned with policy updates. Each policy update is
accompanied by a release, describing software changes and corresponding documentation.
 Methods of Audit: A record of all changes in documents is maintained for accounting and
monitoring purposes.

3. Document management tools and techniques

The following tools and processes are used to create, manage, and distribute documents.

3.1 Documentation tools

 Markdown Editors: Tools such as Typora or Visual Studio Code can be used to create and edit
technical documents using Markdown, allowing for consistent formatting and easy export to other
formats
 Document Processors: Tools like Microsoft Word and Google Docs facilitate collaborative
editing, version tracking, and formatting.

3.2 Handling and Storage

 Cloud storage: Google Drive and SharePoint are used for secure cloud-based storage of
document files, making them easier to access and back up.
 Version control system: GitHub or Bitbucket repositories are used to manage changes to
documents, track changes, and enable collaboration among collaborators.

3.3 Instrumentation and response

 Progress for collaboration: Tools like Slack, Microsoft Teams, and Trello support real-time
collaboration, allowing team members to provide feedback and track document progress.
 Issue tracking system: Jira or GitHub issues are used to track documentation-related bugs,
progress, or recommendations.
3.4 Automation and printing equipment

 Static Site Generators: Tools like Docusaurus or GitBook turn Markdown files into professional
online documentation websites.
 Continuous Integration (CI) tools: CI tools like Jenkins or GitHub Actions automatically create
and publish an updated document each time a change is merged.

Summary

Effective labeling is critical to user satisfaction and business success. This policy outlines the process for
developing, maintaining, and producing operating instructions, policy documents, and supporting
documentation.

3.2 Management

Introduction

Efficiency is essential to successfully execute an AI-powered smart city software project. This section
outlines the roles and responsibilities of the project team, the optimization of resource estimates, and the
project management techniques dictated by the IEEE 730-2014 standard for software quality assurance
(SQA). road Appropriate management ensures that every team member understands their role, resource
allocation is done efficiently, with quality control throughout the life of the project in.

1. Roles and Responsibilities Within the Project Team

To ensure smooth collaboration and accountability, the roles and responsibilities of the team are clearly
defined as follows.

Project Manager  Responsibilities: Oversees project planning, planning and monitoring


(PM) progress. Facilitates communication between stakeholders and ensures
timely delivery of work.
 Responsibilities: Manages risk, resource allocation, and conflict resolution.
Software  Responsibilities: Designs system design, defines data flows, and ensures
Specialist alignment with AI strategy.
 Responsibilities: Ensures system scalability, functionality, and adherence
to design principles.
Development  Responsibilities: Write, test, and maintain code for AI systems.
team (developers Development of front-end and back-end components.
and organizers)  Responsibilities: Provide functional software that meets system
requirements and user needs.
Quality  Responsibilities: Perform software testing, defect identification, and quality
Assurance (QA) assurance using a variety of test methods (unit, system, and regression
team testing).
 Responsibilities: Ensure that the system meets quality standards and
conforms to IEEE 730-2014 guidelines.
Business Analyst  Responsibilities: Collects and defines project requirements, communicates
with stakeholders, and develops System Requirement Document (SRD).
 Responsibilities: Ensures project deliverables meet client expectations.
Data scientists  Responsibilities: Designs and trains AI models using machine learning
(ML) techniques. handle data preprocessing and model validation.
 Responsibilities: Ensures the accuracy, efficiency, and ethical application
of AI models in the process.
Security experts  Responsibilities: Identifies and mitigates potential security vulnerabilities.
Implements data security protocols and performs penetration testing.
 Responsibility: Protects user data privacy and prevents security breaches.

2. Estimation of Resources for Quality Assurance

Quality assurance (QA) resource audits include human, technical, and financial resources. Proper
distribution is essential to ensure compliance with IEEE 730-2014.

Human Resources  QA Team: System, integration and regression testing requires a dedicated
team of software testers and QA engineers.
 Test Automation Engineers: To reduce manual testing effort and improve
test coverage, automated test scripts should be developed.
Technical  Testing tools: Tools like Selenium, JIRA, and TestRail are essential for
Infrastructure automated testing, bug tracking, and results reporting.
 Test Environments: Designing a controlled environment for production
simulation.
 CI/CD Pipelines: Continuous testing through a CI/CD pipeline ensures
early detection of defects.
Financial  License fees: For software testing tools such as JIRA or Selenium
Resources Enterprise.
 Training Cost: QA engineers are trained on IEEE 730-2014 standards and
AI-specific testing methods.
Time Resources  Time allocation for test design, execution, and reporting.
 Time buffer to address testing bottlenecks and rework issues.

3. Project Management Strategies

The IEEE 730-2014 standard outlines methods for implementing an effective software quality assurance
(SQA) process. The following methods will be used:

Risk Based Approach

 Action: Identify critical areas that can affect program efficiency, such as AI model biases, data
security, and ethical use of AI.
 Action: Use the risk management plan to assess potential risks and impacts and prioritize
mitigation plans accordingly.

Compliance with IEEE 730-2014

 Action: Verify that the software meets the quality standards specified in IEEE 730-2014.
 Activity: Develop a Software Quality Assurance Plan (SQAP) that outlines processes,
deliverables, and acceptances for each phase of the project.

Agile project management

 Action: Implement an iterative development model where requirements, design, and testing are
resolved in cycles (sprints).
 Functionality: Utilize JIRA and other Agile tools to create sprint backlogs, manage iterations,
and track progress in real time.

Change Management

 Action: Establish a change control board (CCB) to review and approve changes to program
requirements or policies.
 Implementation: All change requests will be documented and approved prior to implementation,
ensuring minimal disruption to the project timeline.
Metrics and Reporting

 Action: Monitor project progress through key performance indicators (KPIs) such as defect rates,
test coverage, and on-time delivery.
 Action: Create a dashboard that visualizes these KPIs, and allows stakeholders to monitor the
health of the business

Summary

Managing an AI-driven smart city software project is based on transparent activities, efficient use of
resources, and adherence to IEEE 730-2014 standards each team member is assigned specific roles and
responsibilities, with careful consideration accountable in order to meet quality assurance requirements,
implementation strategies And timely , high Effective performance ensuring software delivery
compliance accountability, transparency, and consistency encourage progress throughout the software
development lifecycle.

4. Part 4: Software Requirements Specification (SRS) and Use


Cases – Individual Work
Software Requirements Specification SRS

Sub-topic: Security

Security is a key component of AI-powered smart city software. This work must ensure data
confidentiality, system integrity and user privacy. The following requirements correspond to the security
subtopic.

Data encryption requirements

 Requirement: To prevent unauthorized access, the system must use end-to-end encryption to
transmit data.
 Explanation: All encrypted data exchanged between the user’s device and the system server will
be performed using AES-256 encryption. This ensures that sensitive information such as personal
information and payment information is kept confidential and secure.
 Rationale: This requirement prevents data leaks and reduces the risk associated with middle-in-
the-middle (MITM) attacks and data breaches.
User authentication and access requirements

 Requirement: The system must have support for multifactor authentication (MFA) for users to
ensure secure access.
 Description: Users will need a combined password, one-time password (OTP) to access their
mobile phone, biometric authentication (fingerprint or facial ID) if available, Role-Based Access
Control (RBAC) User roles (e.g., admin , user, guest). ) will restrict access to system modules on
the base.
 Rationale: This requirement prevents unauthorized access, protects sensitive information, and
ensures accountability by managing specific user access.

These security requirements protect system data and user information while maintaining privacy, integrity
and availability of AI-powered smart city software

Use Cases

Use Case 1: Secure Data Transmission

 Title: End-to-end encrypted data transmission


 Actor: Rich, system server
 Precondition: The user is authenticated and initiates the transaction.
 Trigger: The user sends a request to the system (e.g., to send a payment or access a personal
dashboard).

Main Flow:

 User requests are encrypted using AES-256 encryption.


 The encrypted request is sent to the system server.
 The server decrypts the request and processes it.
 The server sends an encrypted response back to the user.
 The user decrypts the response and checks it.

Response status: User data has been securely processed and displayed.

Value Setting: Ensures confidentiality and integrity of user data to prevent interception or alteration
Diagram for Use Case 1 - Secure Data Transmission

Graph Explanation

 The request is initiated by the user.


 Data is encrypted using AES-256.
 The encrypted data is sent to the Server.
 The server decrypts the data, processes it, and sends an encrypted response back to the user.

Use Case 2: Multi-Factor Authentication (MFA) Login

 Title: Secure User Authentication Using Multifactor Authentication (MFA).


 Actor: User, trust server of the system
 Prerequisite: The user has a registered account on the system.
 Trigger: The user tries to login to the system.

Main Flow:

 The user enters his username and password.


 The system validates the certificates.
 The system sends an OTP to the user’s registered mobile phone.
 the user enters the OTP.
 Biometric authentication (fingerprint or facial recognition) is requested.
 Access is granted when loyalty is won.

Response Conditions: The user is granted access to the system.

Value Setting: Protects the system from unauthorized access and maintains user privacy through MFA.

These controls ensure secure data communications and a strong authentication process, increasing the
overall security level of the system.
Diagram for Use Case 2 - Multi-Factor Authentication (MFA)

Graph Explanation

 The user logs in by entering their username and password.


 If the credentials are valid, an OTP is sent to the user.
 The user enters the OTP, and biometric authentication (fingerprint/facial ID) begins.
 If all checks are successful, the user is granted access.

5. Part 5: Black Box Testing and Risk Management – Individual


Work
Black-Box Testing

Black box testing focuses on testing the functionality of a system without knowledge of its internal logic
or source code. Two applications are explored for the AI-powered smart city software.

 Data Transfer Security (Encryption) .


 Multi-factor authentication (MFA) login

Functionality 1: Secure data transmission

 Test Objective: Ensure that data transferred between user and user is properly encrypted and
described.

Experimental conditions:

 General check : Send the data and check if it reaches the server in an encrypted format.
 Edge Test: Send extremely large data to test buffer overflow protection.
 Negative check: to block data transmission and check if the data is readable (make sure this is
encrypted).
 Expected result: The data should be encrypted before transmission and decrypted when it
reaches the server.

Functionality 2: Routing Multifactor Authentication (MFA).

 Test Objective: Verify that the system allows access only after all MFA steps have been
completed.

Experimental conditions:
 General Check: The user logs in with a valid username, password, OTP, and valid biometric
verification.
 Edge Test: Use incorrect passwords, OTPs, or biometric inputs to test to see if system access is
blocked.
 Negative Check: Attempt to login without OTP or through biometric authentication.
 Expected Outcome: Admission should be granted only upon successful completion of all MFAs.

The diagram below shows the process for Black Box Testing of the Secure Data Transmission and MFA
Login functionalities
Black Box Testing Process Diagram

Explanation of Diagram

 Define test cases: Define test cases for normal, edge, and negative conditions.
 Load test data: Load sample data (e.g., encrypted messages, login credentials) into the system.
 System Function: The system processes input using Secure Data Transmission or MFA logic.
 Check Output: Check whether the output of the system matches the expected output.
 Compare results: Compare program results with expected results.
 Pass/Fail Decision: If the results match, the test is cancelled; Otherwise it fails.

Results and Analysis of Test Outcomes

Secure data transmission:

 Pass: Data encryption/decryption worked successfully in 95% of cases.


 Failure: Buffer overflow occurred in 5% of cases, causing the development team to use long data
analysis.

MFA Admission:

 Pass: Login succeeded when all user inputs (password, OTP, and biometrics) are correct.
 Failure: Access was denied in 100% of the negative tests, indicating that the system effectively
deterred the undocumented.

Summary of findings

Testing confirmed that data transmission is encrypted, and that MFA access control works as intended.
However, more work is needed to address edge issues such as buffer overflows.

Risk Management

Risk Management Identifies, analyzes, and mitigates potential risks in the project. There are two main
risks to AI-powered smart city software:

Risk of data breaches


System downtime risk

Risk 1: Risk of data breach

 Risk Description: Unauthorized access to a user’s data during data transmission.


 Cause: Encryption algorithm malfunction or system vulnerability.
 Impact: Violation of user privacy, loss of revenue and reputational damage.

Mitigation strategies:

 Encryption Upgrade: Use AES-256 encryption for all data transfers.


 Penetration testing: Perform periodic security checks to identify vulnerabilities.
 Access controls: Use role-based control (RBAC) to restrict access.

Risk 2: Risk related to when the system stops working

 Risk Description: The system may go offline due to hardware failure or software corruption.
 Cause: Server overload, memory leak, or unhandled exceptions.
 Impact: Loss of service availability, user dissatisfaction and business disruption.

Mitigation strategies:

 Server redundancy: Use failover servers to ensure availability when the system crashes.
 Exception handling: Implement robust error handling techniques in system operations.
 Load test: Conduct a load test to determine the capacity of the system.

Risk Management Process Diagram


Graph Explanation

 Risk Assessment: Identify all potential risks (e.g., data breaches, uptime).
 Risk Analysis: Analyze the causes and consequences of the identified hazards.
 Risk Assessment: Prioritize actions and consider any potential risks and their impact.
 Mitigation plans: Develop measures to reduce or eliminate risk (e.g. server redundancy,
penetration testing).
 Risk Assessment and Analysis: Continue to monitor the risk and update the mitigation plan.

How Testing Contributes to Risk Management

Black box testing plays an important role in risk mitigation. Ensuring secure data transmission and MFA
access addresses potential risks such as data breaches and system downtime. Here’s how to do it:

Reduced data breach risk


 How testing helps: Black box testing ensures that data is encrypted before delivery.
 Proof: Negative testing has confirmed that blocked data cannot be read, proving that encryption
works well.

System Downtime Risk Reduction

 How testing helps: Load testing identifies system overload issues and buffer overflow risks.
 Evidence: Edge test cases highlighted the risk of buffer overflow, leading to input length tests to
reduce the chance of system crashes

These proactive measures reduce the impact of risks and improve system resilience.

Summary

 Black box testing of secure data transmission and MFA access validates system security and user
access.
 The risk management strategy outlines the risk of a data breach and the risk of system downtime,
which is mitigated by encryption, penetration testing, and server redundancy.
 The diagrams show the black box testing process and risk management life cycle.

6. Conclusion

This project provided a comprehensive analysis of the design, development and quality processes
involved in an AI-powered smart city software system Key areas covered include project design,
architecture, software quality precautionary and risk management. Key system functions such as secure
data communication and multifactor authentication (MFA) were rigorously tested using black box testing
techniques Detailed test scenarios including normal, edge, and negative test cases were developed to
identify and verify system vulnerabilities if it is efficient The inputs are reduced by checking the length
and updating the system.

The architecture focused on modular development, with clearly defined data structures and their
interactions. Additionally, the role of documentation and configuration management in ensuring seamless
upgrades, updates, and version control was emphasized. Risk management was a priority, with data
breaches and systems found to cease operations as potential risks. Mitigation measures including AES-
256 encryption, penetration testing, and failover servers were proposed to address these risks.
Overall, this exercise led to a deeper understanding of important learning outcomes such as system
design, software quality assurance, and risk management. Effective application of black-box testing and
risk assessment principles demonstrated the importance of proactive assessment and mitigation strategies
in software development The project encouraged important considerations from industry standards such
as IEEE 730-2014 strengthened, emphasizing the importance of robust design, security and continuous
assessment for a given sustainability

7. References

 Bass, L., Clements, P., & Kazman, R. (2012). Software Architecture in Practice. 3rd ed. Boston:
Addison-Wesley.
 Sommerville, I. (2015). Software Engineering. 10th ed. Harlow: Pearson Education Limited.
 IEEE. (2014). IEEE Standard for Software Quality Assurance Plans (IEEE 730-2014). New
York: Institute of Electrical and Electronics Engineers (IEEE).
 Pressman, R. S., & Maxim, B. R. (2019). Software Engineering: A Practitioner’s Approach. 9th
ed. New York: McGraw-Hill Education.
 Boehm, B. (1988). A Spiral Model of Software Development and Enhancement. ACM SIGSOFT
Software Engineering Notes, 11(4), pp. 14-24.
 Fowler, M. (2002). Patterns of Enterprise Application Architecture. Boston: Addison-Wesley.
 Kotonya, G., & Sommerville, I. (1998). Requirements Engineering: Processes and Techniques.
Chichester: John Wiley & Sons.
 Beck, K. (2000). Extreme Programming Explained: Embrace Change. 1st ed. Boston: Addison-
Wesley.
 Humphrey, W. S. (1989). Managing the Software Process. Boston: Addison-Wesley.
 ISO/IEC. (2011). ISO/IEC 25010:2011 Systems and Software Engineering – Systems and
Software Quality Requirements and Evaluation (SQuaRE) – System and Software Quality
Models. Geneva: International Organization for Standardization.
 NIST. (2019). Cybersecurity Framework Version 1.1. National Institute of Standards and
Technology (NIST). Available at: https://www.nist.gov/cyberframework (Accessed: [Insert
Date]).
 Jacobson, I., Booch, G., & Rumbaugh, J. (1999). The Unified Software Development Process.
Reading, MA: Addison-Wesley.
 Gill, A. Q., & Henderson-Sellers, B. (2006). Software Quality Models: A Systematic Review of
the Literature. Information and Software Technology, 48(7), pp. 676-695.
 Jureta, I. J., Borgida, A., & Mylopoulos, J. (2009). Technical Debt and Software Requirements
Engineering. Requirements Engineering Journal, 14(3), pp. 191-198.
 Hazzan, O., & Dubinsky, Y. (2008). Agile Software Engineering. London: Springer.
 Leveson, N. G. (2011). Engineering a Safer World: Systems Thinking Applied to Safety.
Cambridge, MA: MIT Press.
 Glass, R. L. (2002). Facts and Fallacies of Software Engineering. Boston: Addison-Wesley.
 McGraw, G. (2006). Software Security: Building Security In. Boston: Addison-Wesley.
 Larman, C. (2004). Agile and Iterative Development: A Manager's Guide. Boston: Addison-
Wesley.
 Menzel, M., & Koschel, A. (2010). Security Requirements Specification in Software Engineering
Projects. Journal of Systems and Software, 83(4), pp. 628-646.

You might also like