Requirements engineering... with ChatGPT

Requirements engineering... with ChatGPT

Introduction

As an engineer and technologist, I've been?exploring the capabilities of developing artificial intelligence?services. So far we have used ChatGPT to generate a Q&A magazine feature, technical role spec, applicant cover letter and CV. We also used AI to plan questions, prompts and responses to a corresponding job interview. Series products to date have been amazing. But it's time to turn it up a notch.

In this (more stretching and substantive) article we hone in on the work of requirements engineering. Our thread continues with an assignment to work on a concept autonomous grocery delivery service. AI outputs include outline planning, stakeholder listing, requirements elicitation prompts, sample service workflow, derived high-level requirements and sub-requirements in turn. AI performs all this based on just a few short prompts from me (see below).

Please take the time to read and process prompts and products below... then hit the comments with reflections as to how roles and crafts might adapt and change in light of AI.


Assignment to works

David: Welcome to GSES Sarah, it's great to have you on board as our Lead Systems Engineer.

Sarah: Thank you, David. I'm thrilled to be here and ready to contribute my expertise to the team.

David: I have your first assignment for you. We're developing a concept for an automated grocery home delivery service in the North West of England. Your role will be to lead the systems engineering effort, which includes identifying and engaging stakeholders, and eliciting their requirements.

Sarah: Of course, I understand. I've had extensive experience in stakeholder engagement and requirements elicitation. I'm familiar with ISO 29148 guidelines, which provide a practical framework for engaging stakeholders in a systematic manner.

David: Excellent, I'm glad to hear that. Can you give me an idea of how you would approach this task on this project?

Sarah: Sure. I would start by identifying all the stakeholders involved in the lifecycle of the automated grocery home delivery service. This would include customers, delivery providers, grocery stores, and any other parties who have a stake in the project's success. Then, I would classify the stakeholders into different categories based on their level of influence and interest. This will help me prioritize my engagement efforts.

Next, I would reach out to the stakeholders and schedule meetings to understand their primary interests and requirements. I would use a combination of surveys, interviews, and focus groups to gather information. During these interactions, I would ensure that I actively listen to the stakeholders, respond to their concerns and ensure their feedback is captured and considered in our requirements elicitation process.

David: That sounds like a comprehensive approach. Can you provide an example of how you've used this method in the past to successfully elicit requirements?

Sarah: Absolutely. I recall a project I led where I was tasked with developing a new transportation management system. I applied a similar approach as I just described and was able to effectively engage with all the stakeholders, including customers, drivers, dispatchers, and government agencies. Through this engagement, I was able to gather their requirements and incorporate them into the system design, which ultimately led to a successful project outcome.

David: Great, it's reassuring to know that you have a proven track record in this area. I have full confidence in your ability to lead this effort. Let's work together to make this project a success.

Sarah: I agree, and I'm looking forward to working with the team and delivering a successful outcome.

Stakeholder Identification

Candidate stakeholders for the autonomous grocery delivery service:

  1. Customers: Customers will be the primary users of the service and will have an interest in receiving accurate and timely deliveries of their groceries.
  2. Retailers: Retailers will be the suppliers of the groceries and will have an interest in ensuring that the service accurately represents their products and that the automated technology can pick and pack the items effectively.
  3. Delivery Companies: The delivery companies will be responsible for transporting the groceries and will have an interest in ensuring that the automated technology is efficient, cost-effective and safe.
  4. Local Authorities: Local authorities will be responsible for regulating the operation of the autonomous vehicles and will have an interest in ensuring that the technology is safe and secure and does not pose a threat to public safety.
  5. Insurance Companies: Insurance companies will be responsible for insuring the autonomous vehicles and will have an interest in ensuring that the technology is safe and secure and does not pose a risk to the public.
  6. Technology Providers: Technology providers will be responsible for supplying the autonomous vehicles and the technology to support the service, and will have an interest in ensuring that the technology is reliable and effective.

Elicitation prompts

In order to elicit requirements from the stakeholders, the following lines of enquiry can be used:

Customers:

  • What are your expectations for delivery time and accuracy?
  • How important is the appearance of the delivery vehicle to you?
  • What payment options would you like to see available?

Retailers:

  • How do you currently pick and pack items for delivery?
  • What information about the products do you want to be conveyed to customers during the ordering process?
  • What are your concerns about the transition to an automated delivery system?

Delivery Companies:

  • What is your current delivery process like?
  • What are the biggest challenges you face in the delivery process?
  • What are your expectations for the automated delivery process?

Local Authorities:

  • What regulations and requirements must the autonomous vehicles comply with in your jurisdiction?
  • What are your concerns about the safety of the technology?
  • How would you like to be involved in the testing and deployment of the technology?

Insurance Companies:

  • What risks do you see associated with the use of autonomous vehicles for delivery?
  • How do you assess the safety and security of the technology?
  • What steps do you need to see taken to mitigate the risks associated with the technology?

Technology Providers:

  • What technology options are available for the delivery vehicles?
  • What is your experience with the deployment of similar technologies?
  • What are your expectations for the development timeline for the technology?

Sample service workflow

  1. Order placement: A customer visits the service's website or mobile application and selects the items they wish to purchase. They enter delivery information, choose a delivery time slot, and complete the payment process.
  2. Order processing: The service's system processes the order, checks for availability of items, and confirms the delivery time slot. The system also generates a unique order number for tracking purposes.
  3. Picking and packing: The service's automated technology selects the items from the shelves and packs them in the delivery vehicle. The technology updates the order status to "In Transit".
  4. Delivery: The delivery vehicle travels to the customer's location, using GPS and other navigation technology to find the best route. The vehicle updates the order status to "Delivered" upon arrival.
  5. Customer receipt: The customer receives a notification that their order has been delivered. They can also track the delivery in real-time using the order number.
  6. Customer feedback: The customer is asked to provide feedback on the delivery service, including the accuracy of the order, delivery time, and overall experience. This feedback is used to improve the service and ensure customer satisfaction.

High-level Requirements

RQ-001: Order placement

  • Description: Customers shall be able to place an order through the service's website or mobile application.
  • Rationale: The order placement process needs to be easy and convenient for customers to increase customer satisfaction and encourage repeat business.

RQ-002: Order processing

  • Description: The service's system shall process orders in real-time and confirm delivery time slots.
  • Rationale: Customers expect fast and reliable order processing, so the service needs to be able to process orders quickly and accurately.

RQ-003: Picking and packing

  • Description: The service's automated technology shall pick and pack items from the shelves.
  • Rationale: Automated picking and packing will ensure that items are selected and packaged efficiently, reducing the risk of errors and improving the overall delivery experience.

RQ-004: Delivery

  • Description: The delivery vehicle shall transport the items to the customer's location.
  • Rationale: The delivery vehicle is a key component of the service and must be able to transport items to customers in a safe and efficient manner.

RQ-005: Customer receipt

  • Description: The customer shall receive a notification when their order has been delivered.
  • Rationale: This requirement ensures that customers are informed when their order has been delivered, providing peace of mind and increasing customer satisfaction.

RQ-006: Customer feedback

  • Description: The service shall request customer feedback on the delivery process.
  • Rationale: Feedback from customers is important for continuous improvement of the service, and helps to ensure customer satisfaction.

Decomposed requirements

RQ-001: Order placement

SRQ-001-1: User authentication

  • Description: Customers shall be able to create an account and log in to the service's website or mobile application.
  • Rationale: User authentication is necessary to track customer orders and ensure that only authorized users can place orders.

SRQ-001-2: Order form

  • Description: Customers shall be able to select items and specify quantities and delivery details using an online form.
  • Rationale: The order form needs to be intuitive and easy to use, so that customers can place orders quickly and accurately.

SRQ-001-3: Payment processing

  • Description: Customers shall be able to pay for their orders using a variety of payment methods.
  • Rationale: Payment processing is a crucial component of the order placement process, and the service needs to be able to process payments quickly and securely.

RQ-002: Order processing

SRQ-002-1: Order validation

  • Description: The service's system shall validate the order information to ensure that it is complete and accurate.
  • Rationale: Order validation is necessary to reduce the risk of errors and ensure that orders can be processed quickly and efficiently.

SRQ-002-2: Delivery time slot selection

  • Description: The service's system shall allow customers to select a preferred delivery time slot.
  • Rationale: Allowing customers to select a delivery time slot helps to ensure that the delivery process is convenient for them.

SRQ-002-3: Order confirmation

  • Description: The service's system shall confirm the order and delivery time slot with the customer.
  • Rationale: Order confirmation helps to ensure that customers are aware of their order details and delivery time slot, reducing the risk of misunderstandings.

RQ-003: Picking and packing

SRQ-003-1: Inventory management

  • Description: The service's system shall maintain an up-to-date inventory of items in the store.
  • Rationale: An accurate inventory is necessary for the picking and packing process to ensure that items are available and can be selected efficiently.

SRQ-003-2: Picking process

  • Description: The service's automated technology shall pick items from the shelves and place them in delivery containers.
  • Rationale: The picking process needs to be automated to ensure that items are selected accurately and efficiently.

SRQ-003-3: Packing process

  • Description: The service's automated technology shall pack items in delivery containers in a manner that protects them during transport.
  • Rationale: Packing items properly is necessary to ensure that they arrive at the customer's location in good condition.

RQ-004: Delivery

SRQ-004-1: Delivery vehicle

  • Description: The delivery vehicle shall be equipped with navigation technology and sensors to enable autonomous operation.
  • Rationale: Navigation technology and sensors are necessary to ensure that the delivery vehicle can transport items to customers safely and efficiently.

SRQ-004-2: Delivery route planning

  • Description: The delivery vehicle shall use its navigation technology to plan the most efficient delivery route.
  • Rationale: Efficient delivery routes are necessary to ensure that deliveries are made in a timely manner and to minimize fuel consumption.

SRQ-004-3: Delivery tracking

  • Description: The service's system shall provide customers with real-time updates on the delivery status of their order.
  • Rationale: Delivery tracking helps to ensure that customers are aware of the status of their order, reducing the risk of misunderstandings and increasing customer satisfaction.

RQ-005: Customer receipt

SRQ-005-1: Delivery notification

  • Description: The service's system shall send a notification to the customer's device when the delivery has been completed.
  • Rationale: Delivery notifications help to ensure that customers are informed when their order has been delivered, providing peace of mind and increasing customer satisfaction.

SRQ-005-2: Receipt generation

  • Description: The service's system shall generate a receipt for the customer, including order details and delivery information.
  • Rationale: Receipts help to provide a record of the order and delivery process, which can be useful for customer billing and service improvement.

RQ-006: Customer feedback

SRQ-006-1: Feedback form

  • Description: The service's website or mobile application shall provide a form for customers to provide feedback on their delivery experience.
  • Rationale: A feedback form helps to ensure that customers can provide feedback in a convenient and standardized manner.

SRQ-006-2: Feedback analysis

  • Description: The service's system shall analyze customer feedback to identify areas for improvement.
  • Rationale: Feedback analysis is necessary to ensure that the service continues to improve and provide a high level of customer satisfaction.



My scripted prompts

I would like you to generate a short dialogue between David (GSES Director) and Sarah Johnson (a newly appointed Lead Systems Engineer). David should welcome the new recruit and introduce her first work assignment. The project will be concerned with developing a concept automated grocery home delivery service in the North West of England. David expects Sarah to know how to identify, classify and engage lifecycle stakeholders, identify their primary interests and elicit outline requirements. Sarah should be able to articulate how she will do this consistent with her brief, expertise and ISO 29148. The dialogue should be personable, professional and assure David of Sarah's capability to deliver the assignment. David may seek elaboration on any given point. Sarah may need to follow up with qualifying examples, terms and / or potential deliverables.
I want you to assume the role of a requirements engineer working on a concept autonomous grocery delivery service. The envisaged solution will not employ human delivery drivers. Automated technology will instead pick, pack and transport goods. Please list candidate stakeholders, prospective corresponding interests, and at least 3 lines of enquiry for elicitation of requirements.
Suggest a workflow for ordering through to fulfilment.
Translate these steps to high-level requirements and format in a consolidated list with unique identifiers and accompanying rationale. Requirements format shall follow INCOSE requirements writing guidelines.
I would like you to derive sub-requirements for each high-level requirement, ensuring consistency with original requirements. Please present in a hierarchical list with an ID, description and rationale for each sub requirement.


Rob Black very interesting article, I can see this as a potentially fruitful use of LLMs. Would you be willing to provide more information on the context you used for this experiment? For instance, did you do this in the openai.com/playground or some other tool you have created? It would be great to know the tuning parameters you used: model, mode, temperature, etc.

回复
Dr. Joe Silmon

Senior Expert Digitised Railway Operation at DB Netz AG

2 年

Nonsense. The most it can do is string together a readable sentence in natural language. It has no ability to question stakeholders, interpret their input based on engineering knowledge, nor to make optimisation decisions. Read ISO 29148 and you'll begin to understand that there is more to requirements engineering than a handful of "shall" statements.

M. Ganesan

PhD || 22 Years into Engineering, Products & SW - Train Control, SIG, ISRO || Patents || NIT, Trichy

2 年

Shantanu Deshmukh

回复
Rob Black

Systems Thinker | Improvements Lead - BSc (Hons), CMgr FCMI, FICIPS, CSEP MINCOSE, CPRE IREB, AMBCS, APM-PMQ

2 年
回复
Freddy K.

Systems Engineering | Enterprise Architecture | I&ST

2 年

Thanks for sharing. I shall replace "can do" with "can help do". Indeed, it could help, for instance, by providing designers with reusable and synthetic prior (consumable by AI) data -- e.g. when a newly engineered system can be compared with former engineered systems. In this case, some means of (feasibility) verification -- of the provided data -- would be more than necessary. The point is: beware of confusing accuracy with appropriateness. I like the quote: "... But accurate accounting does not distinguish between a good financial plan and a bad one, nor help to make a bad one better. Similarly, accurate control of interfaces and requirements is necessary to good systems engineering, but no amount of care in such matters can make a poor design concept better. Systems engineering is first and foremost about getting the right design -- and then about maintaining and enhancing its technical integrity, as well as managing complexity with good processes to get the design right. ..." To sum up, AI can help do systems enginering (and many other things), but cannot do it.

要查看或添加评论,请登录

Rob Black的更多文章

  • A Year in Review: INCOSE UK North West Local Group

    A Year in Review: INCOSE UK North West Local Group

    As Chair of the INCOSE UK North West Local Group, I thought it would be helpful to review key activities, outputs, and…

    2 条评论
  • Human Resourcing... with ChatGPT

    Human Resourcing... with ChatGPT

    Introduction As an engineer and technologist I've been exploring ChatGPT with the view to understanding capabilities…

  • Easy Approach to Requirements Syntax (EARS)... with ChatGPT

    Easy Approach to Requirements Syntax (EARS)... with ChatGPT

    Introduction As an engineer and technologist I've been exploring ChatGPT capabilities and sharing outputs in a series…

    17 条评论
  • Concepts, marketing and more... with ChatGPT

    Concepts, marketing and more... with ChatGPT

    Introduction As an engineer and technologist I've been exploring developments in artificial intelligence. In previous…

    7 条评论
  • Software development... with ChatGPT

    Software development... with ChatGPT

    Introduction As an engineer and technologist I've been exploring ChatGPT and allied artificial intelligence services…

    8 条评论
  • Interviewing... with ChatGPT

    Interviewing... with ChatGPT

    Introduction As an engineer and technologist I've been exploring emerging artificial intelligence capabilities and…

    6 条评论
  • Applying for jobs... with ChatGPT

    Applying for jobs... with ChatGPT

    Introduction As an engineer and technologist I've been exploring developments in artificial intelligence. In previous…

    1 条评论
  • Recruiting... with ChatGPT

    Recruiting... with ChatGPT

    Introduction As an engineer and technologist, I've been exploring the capabilities of developing artificial…

    4 条评论
  • An interview with... ChatGPT

    An interview with... ChatGPT

    Introduction As an engineer and technologist, I've been exploring the capabilities of developing artificial…

    5 条评论
  • All I want for Christmas...

    All I want for Christmas...

    What do you want for Christmas? I expect it is not..

    2 条评论

社区洞察

其他会员也浏览了