7 IT use cases with ChatGPT

Guest contribution by | 08.07.2024

Computer scientists don’t just write programme code in their work, they also write a lot of texts: specifications, concepts, documentation, manuals, reports and so on.

Could an artificial intelligence that can generate texts save time here? In the following, I will show you seven examples of the performance of ChatGPT in a computer science context.

Basics: What is ChatGPT?

ChatGPT is the abbreviation for Chat Generative Pretrained Transformer and can be used free of charge. [1] It is one of several large language models that are currently publicly available. According to the Chatbot Arena, chatGPT is currently the best chatbot. [2]

ChatGPT writes about itself:

“My approach to intelligent text chat is based on a deep understanding of natural language and human behaviour. I analyse user input to recognise context and intent and generate appropriate responses, taking into account grammar, style and relevant knowledge. In doing so, I draw on an extensive training dataset from various sources to cover a wide range of topics.

My aim is to provide users with helpful and relevant information and support them in natural conversations. By ‘deep understanding’, I mean the ability to recognise complex language patterns, understand semantic relationships and generate contextual responses.”

What’s new from the user’s perspective? Artificial intelligence (AI) was already experiencing hype in the 1990s, but did not make it into practical application as artificial intelligence had to be installed and trained for a long time. Due to the usually limited training data, it was not possible to achieve particularly high quality results.

The new thing about ChatGPT from the user’s point of view is that artificial intelligence can now be used without installation. It has already been pre-trained with extensive data and is therefore capable of performing in a wide variety of fields of knowledge, not least computer science.

When using it, however, you should bear in mind that all your entries can be used by ChatGPT for further training. They are therefore no longer confidential and could be displayed to other users. To have more control over your own data, you need a paid enterprise licence from Open AI or you can install an open source solution locally on your own computer without an internet connection. [3]

Example 1: Automated creation of specialised texts

ChatGPT is able to write different texts for computer scientists:

Texts for computer scientists

Figure 1: Texts for computer scientists

ChatGPT’s particular strength lies in writing competent-sounding but technically superficial specialised texts. In doing so, he acts like many people: The more general the blah-blah, the less likely you are to get something wrong!

A computer science student from one of my courses tested in his project work how well ChatGPT can write term papers on the following three topics:

  1. Big Data and Ethics,
  2. work motivation in a comparison of two studies and
  3. Opportunities and challenges of traceability. [4]

He had these written chapter by chapter, as ChatGPT does not (yet) generate twelve-page texts.

The resulting texts were impressively fluent, well-structured and correct in terms of content. However, they were also very superficial and not very self-reflective.

From a scientific point of view, the biggest shortcoming was that no references were provided. When these were explicitly requested, ChatGPT provided invented sources. These were plausibly invented, e.g. the alleged author of a book actually worked in this field, but the book did not exist. ChatGPT is therefore currently unable to provide true sources.

For such purposes, it is therefore advisable to combine a scientific search engine with a large language model[5] and, of course, non-trivial statements made by the AI should be checked manually through your own research.

Example 2: Automated creation of tables of contents

I have had ChatGPT create tables of contents of books, term papers or seminars in about a dozen cases for my own purposes or for testing and was positively surprised by the coverage, the level of detail and the correspondence with the current state of knowledge of these tables of contents.

So I commissioned ChatGPT to create a course agenda for a full-day course on requirements engineering as a test. The prompt was simply: “Create a course agenda for an eight-hour course on requirements engineering.”

Without mentioning a standard, the agenda corresponded to the curriculum of the International Requirements Engineering Board (IREB). [6] As you can see, the chatbot even scheduled meaningful breaks and exercises without an explicit prompt!

Agenda for a RE course

Figure 2: Agenda of a requirements engineering course

In response to the request “I am looking for an illustrative case study to demonstrate project management techniques in a lecture”, ChatGPT created

  • created a detailed, multi-page course structure,
  • the – admittedly not very original – application example “Development of an online shop”,
  • a description of the case study,
  • a list of the project management techniques to be taught (which are actually the ones I focus on in my lecture) and
  • a 24-week schedule for the project phases.

ChatGPT did not take into account the term holidays, but otherwise the result is impeccable.

ChatGPT was also able to create a table of contents for a textbook on databases, covering the usual contents of such textbooks. Even the topics “ethics and data protection” are included. The proposal comprises eight chapters, which are planned up to the third outline level.

These results show the very good suitability of ChatGPT for structuring teaching materials and training documents, as well as reports and concepts.

Example 3: Applying methods

Applying methods to examples requires a deep understanding of both the application example and the method. I had actually expected that ChatGPT would not be able to create much more than superficial texts. But ChatGPT has also solved this task very well.

For this reason, I would also describe ChatGPT as a “strong AI”, i.e. an artificial intelligence that is suitable for many different applications, not just for generating technical jargon and tables of contents.

The assignments that ChatGPT was asked to write for us also included those in which methods were applied to a project of our own choosing, specifically

  • the analysis of stakeholders,
  • the determination of requirements,
  • the implementation of an FMEA (Failure Mode and Effects Analysis)
  • and analysing a process for weaknesses and opportunities for improvement. [4]

The relevant stakeholders were sensibly identified and their needs and expectations correctly allocated.

ChatGPT reached its limits when determining the requirements, but this may also be due to the fact that we only gave it very superficial information and ChatGPT had to invent a lot of things.

ChatGPT was able to use the FMEA analysis, a method for identifying and evaluating risks, to good effect. The chatbot was able to identify potential sources of error, discuss their impact on the project and suggest risk mitigation measures. However, there was one drawback: ChatGPT dealt with different risks in each step of the FMEA analysis. [7]

In another study, however, ChatGPT performed very well in the FMEA analysis and reconstructed the essential contents of our sample solution as an FMEA table. ChatGPT performed best compared to many other chatbots.

In practical use, however, these results would have to be checked and supplemented by experts. The advantage over a purely manual analysis is that checking an FMEA analysis is faster than creating it.

Example 4: Creating prototypes

In principle, ChatGPT is not an AI for creating images, but it can write code and therefore also HTML code for a prototype.

Figure 3 shows a partially functional HTML screen prototype for a web application that manages to-do lists. The user can create new tasks, which are then displayed in the list. As this is pure HTML, there is no persistence, i.e. as soon as the browser is closed, the task list is lost. However, the potential for the future is clear.

Prototype task list

Figure 3: Functional screen prototype in HTML for a web application for task management

Example 5: Formulating requirements

ChatGPT can formulate requirements, design them creatively, discuss their quality and even improve them. Templates such as user stories or use cases can also be specified.

One other student had ChatGPT create numerous requirements for a bike hire service. [8] As I use this example in my seminars, we already had a sample solution. ChatGPT was able to compile the typical functionalities of a bike hire shop as well as numerous creative requirements.

Here are two examples of the User Stories generated:

  • Rent a bike: “As a bike hire customer, I want to be able to rent a bike to go for a bike ride or to try out the bike before I buy it and to be flexible and only pay for the bike for the time I use it.”
  • Block account: “As a customer, I would like my account to be blocked if a payment is outstanding so that no one can access my account and I feel obliged to pay my debts.”

(Note: According to the sample solution, the operator wants this account blocking to prevent fraud).

Textual use cases could also be created successfully, all fields of the template were filled in appropriately. ChatGPT also created suitable UML diagrams using the Mermaid syntax. [9]

ChatGPT could therefore be used in the project context, especially in the early phases, as a time-saving tool for creating an initial draft of specifications. The time saving here also results from the fact that checking this specification is faster than creating a new one manually.

Of course, coordination with the stakeholders is still necessary to ensure that the requirements reflect the actual needs and expectations of the stakeholders. An AI model can only provide initial plausible suggestions.

Example 6: Evaluating and improving the quality of requirements

One student tested ChatGPT also for the quality assessment and quality improvement of requirements. [8] She specified concrete quality criteria for the requirements, such as comprehensibility, which ChatGPT was able to apply correctly and generate suggestions for improvement.

For example, ChatGPT compared the self-generated User Story “Rent a bike” with the User Story from the sample solution and came to the following conclusion:

“The generated User Story is better. It describes in more detail why the customer wants to rent a bike, what goals they are pursuing with it and what benefits they can derive from it. It also gives clear reasons for renting (testing before buying, flexibility and payment only for the actual period of use). The model solution, on the other hand, is too general and leaves many questions unanswered, e.g. what type of bike should be rented or how the rental is organised.” [8]

The first three sentences make sense, the fourth sentence does not fit as the generated User Story also leaves these questions unanswered!

Basically, the quality assessment and improvement worked well. However, ChatGPT sometimes changed the original meaning of requirements or added unnecessary details. Under no circumstances can the AI do the quality assurance of the requirements it generates for us.

Example 7: Brainstorming

I don’t use ChatGPT much in my daily work because I still like to write my own texts and its writing style is too superficial for me. However, there is one area in which I always enjoy using ChatGPT and am always amazed by it, namely as a discussion partner for a brainstorming session.

ChatGPT is incredibly creative when it comes to combining existing ideas in new ways.

When brainstorming, it is not important that ChatGPT delivers correct results, but that they are new and surprising. Often enough, a seemingly pointless idea leads to a better one. Even if most of ChatGPT’s ideas are not innovative, there is almost always something new and surprising in each of its lists.

ChatGPT’s ideas are particularly useful when I want to do something completely new, such as a new course, or when I want to improve something existing. In addition, ChatGPT has something to say on every topic and offers not only content, but also case studies and exercises. ChatGPT is highly recommended as a brainstorming partner!

Summary

The use of ChatGPT in the above application examples sheds light on the strengths and weaknesses of the AI model in computer science collaboration.

The strengths: ChatGPT is fast and delivers very good quality, especially when form and quality criteria are specified, so that a good end result can be achieved with little effort and a quality assurance round. The texts are creative and well structured.

Weaknesses: Some of the texts generated are superficial. Content can be plausibly invented or unrealistic. Unfortunately, chatGPT is also unable to cite its sources.

Consequences for IT work: We are definitely at the beginning of a revolution in text production in the world of work, including in IT. Despite all its limitations, chatGPT can save time in computer science text production by quickly generating a first draft of the document to be created. If the first version does not yet correspond to what is desired, the attempt can be quickly repeated with clearer specifications in the optimised prompt.

Of course, the draft generated by ChatGPT must be subjected to a content check. Human expertise remains indispensable, especially in areas that require in-depth understanding, are safety-critical, ethically or legally relevant. However, by working with chatGPT, the experts can produce the same quality in less time, which in times of a shortage of skilled labour means that more and better work can be done with the same staff and hopefully the number of overtime hours worked by the experts can be reduced.

However, the examples also show that the work of AI models such as ChatGPT must be consciously controlled and monitored, e.g. through the step-by-step execution of methods, clear quality specifications and detailed prompts. Because the following still applies: “A fool with a tool is just a faster fool”.

 

Notes:

Dr Andrea Herrmann is a freelance trainer, author and consultant for software engineering. She is particularly passionate about requirements engineering, which will be revolutionised by AI in the near future. She blogs regularly at http://www.herrmann-ehrlich.de/.

[1] ChatGPT
[2] LMSYS Chatbot Arena Leaderboard
[3] gpt4all is one such open source solution
[4] Daniel Kiessling: “Artificial intelligence – ChatGPT as an author of scientific papers and possible consequences for universities.” Project work, AKAD University, 2023
[5] There are now tools such as perplexity that attempt to combine large language models with search engine functionalities
[6] IREB
[7] Tim Reich: “Comparison and evaluation of different artificial intelligences for the creation of an FMEA analysis.” Master’s thesis, AKAD University, 2024
[8] Nadine Weiss: “Generation and evaluation of User Stories and Use Cases with ChatGPT.” Term paper in module PWS81, AKAD University, 2023
[9] Mermaid-Syntax

If you like the article or want to discuss it, please feel free to share it in your network.

Dr Andrea Herrmann has published more articles on the t2informatik Blog, including

t2informatik Blog: Empirical requirements engineering

Empirical requirements engineering

t2informatik Blog: Artificial intelligence and our future

Artificial intelligence and our future

t2informatik Blog: Team building in requirements engineering

Team building in requirements engineering

Dr Andrea Herrmann
Dr Andrea Herrmann

Dr Andrea Herrmann has been a freelance trainer and consultant for software engineering since 2012. She has more than 28 years of professional experience in practice and research.

Dr Herrmann was most recently a deputy professor at Dortmund University of Applied Sciences and Arts, she has published more than 100 specialist publications and regularly gives conference presentations. She is an official supporter of the IREB Board and co-author of the IREB syllabus and handbook for the CPRE Advanced Level Certification in Requirements Management.