Skip to content

Commit 9eefb78

Browse files
committed
Minor refinements to the instructions and explanations. Extended the expected time to 75 minutes.
1 parent df27ff4 commit 9eefb78

1 file changed

Lines changed: 20 additions & 18 deletions

File tree

Instructions/Labs/LAB_AK_14_get-started-spec-driven-development.md

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ GitHub Spec Kit is an open-source toolkit that enables Spec-Driven Development (
1010

1111
In this exercise, you learn how to use the GitHub Spec Kit to develop a new greenfield application. You begin by initializing the GitHub Spec Kit for a new .NET project. You then use GitHub Spec Kit workflows to create the constitution, specification, plan, and tasks documents for the new application. Finally, you use GitHub Spec Kit's implementation workflow to implement an initial MVP version of the application.
1212

13-
This exercise should take approximately **60** minutes to complete.
13+
This exercise should take approximately **75** minutes to complete.
1414

1515
> **IMPORTANT**: To complete this exercise, you must provide your own GitHub account and GitHub Copilot subscription. If you don't have a GitHub account, you can <a href="https://github.com/" target="_blank">sign up</a> for a free individual account and use a GitHub Copilot Free plan to complete the exercise. If you have access to a GitHub Copilot Pro, GitHub Copilot Pro+, GitHub Copilot Business, or GitHub Copilot Enterprise subscription from within your lab environment, you can use your existing GitHub Copilot subscription to complete this exercise.
1616
@@ -22,7 +22,7 @@ For help with configuring your lab environment, open the following link in a bro
2222

2323
## Exercise scenario
2424

25-
You're a software developer working for a consulting firm that's moving to a spec-driven development (SDD) methodology using GitHub Spec Kit and GitHub Copilot in Visual Studio Code. You need to start using the SDD methodology and GitHub Spec Kit as soon as possible. One of your clients, Contoso Corporation, needs you to develop an RSS feed reader app for internal employees. You decide to use the SDD methodology for this greenfield project. Using a SDD methodology with GitHub Spec Kit ensures that an MVP version of the application is delivered quickly, and that additional features can be rolled out seamlessly.
25+
You're a software developer working for a consulting firm that's moving to a spec-driven development (SDD) methodology using GitHub Spec Kit and GitHub Copilot in Visual Studio Code. Your firm has asked you to start using the SDD methodology and GitHub Spec Kit as soon as possible. One of your clients, Contoso Corporation, needs you to develop an RSS feed reader app for internal employees. You decide to use the SDD methodology for this greenfield project. Using a SDD methodology with GitHub Spec Kit ensures that an MVP version of the application is delivered quickly, and that additional features can be rolled out seamlessly.
2626

2727
Contoso's stakeholders documented the project goals, features, and technical requirements for the RSS feed reader app. This information can be used to help generate the constitution, specification, plan, and tasks documents.
2828

@@ -154,7 +154,7 @@ Use the following steps to complete this task:
154154
155155
1. Select **Publish to GitHub private repository**.
156156
157-
> **IMPORTANT**: If prompted to sign in to GitHub, follow the sign-in process to authenticate your GitHub account.
157+
If prompted to sign in to GitHub, follow the sign-in process to authenticate your GitHub account.
158158
159159
1. Verify that the repository was created successfully.
160160
@@ -203,7 +203,7 @@ Use the following steps to complete this task:
203203
204204
You can start a new session by selecting the **New Chat** button (the **+** icon at the top of the Chat panel). Starting a new Chat session ensures a clean context.
205205
206-
> **NOTE:** This lab exercise was tested successfully using the GPT-5.2, Claude Sonnet 4.5, and Claude Opus 4.5 models. The results generated by these models were similar, and relatively consistent. However, using older models such as GPT-4 and GPT-5 mini often produced inconsistent and unexpected results. If possible, we suggest using newer language models that are optimized for complex reasoning when running GitHub Spec Kit commands.
206+
> **NOTE:** This lab exercise was tested successfully using the GPT-5.2, Claude Sonnet 4.5, and Claude Opus 4.5 models. The results generated by these models were similar, although the Claude models (especially Claude Opus 4.5) tended to generate a longer list of tasks in the tasks.md file. Testing with older models, such as GPT-4 and GPT-5 mini, often resulted in inconsistent and unexpected results. If possible, we suggest using newer language models that are optimized for complex reasoning when running GitHub Spec Kit commands.
207207
208208
1. Take a moment to consider your options for running the /speckit.constitution command.
209209
@@ -326,7 +326,7 @@ Use the following steps to complete this task:
326326
327327
1. Monitor GitHub Copilot's response.
328328
329-
It can take a minute or two for GitHub Copilot to analyze the project requirements and then update the constitution.md file.
329+
It can take a few minutes for GitHub Copilot to analyze the project requirements and then update the constitution.md file.
330330
331331
1. Once GitHub Copilot is finished updating the constitution.md file, take a minute to review the suggested edits.
332332
@@ -561,7 +561,7 @@ Use the following steps to complete this task:
561561
562562
GitHub Copilot analyzes the spec.md and plan.md files and generate tasks in the tasks.md file.
563563
564-
It can take 3-4 minutes for GitHub Copilot to generate the tasks.md file. Provide permission and assistance when required.
564+
It can take 4-6 minutes for GitHub Copilot to generate the tasks.md file. Provide permission and assistance when required.
565565
566566
1. Once the tasks workflow is complete, take a few minutes to review the **tasks.md** file.
567567
@@ -629,11 +629,13 @@ Use the following steps to complete this task:
629629
630630
```plaintext
631631
**Phases**: Setup → Foundation → US1 only
632-
**Tasks**: T001 - T037 (37 tasks)
632+
**Tasks**: T001 - T057 (57 tasks)
633633
**Deliverable**: Users can add a known-good feed URL; refresh; see items; restart and confirm persistence.
634634
```
635635
636-
1. In the Chat view, enter a command that starts the implement workflow for the MVP strategy:
636+
The MVP First strategy isn't always limited to the first user story. Depending on the feature complexity, it might include several user stories. They should be listed sequentially after the foundational phase and clearly marked as part of the MVP implementation strategy.
637+
638+
1. In the Chat view, enter a command that starts the implement workflow for the MVP First strategy:
637639
638640
Create a command that specifies the range of tasks required to implement the MVP version of the feature. Use the task range specified in the Implementation Strategy section of the tasks.md file, or calculate it based on the tasks listed under each phase.
639641
@@ -642,27 +644,27 @@ Use the following steps to complete this task:
642644
For example (referencing the MVP implementation example from the previous step), you might enter the following command:
643645
644646
```dotnetcli
645-
/speckit.implement Implement the MVP strategy (Tasks: T001 - T037)
647+
/speckit.implement Implement the MVP First strategy (Tasks: T001 - T057)
646648
```
647649
648-
This command instructs GitHub Copilot to begin implementing the tasks required for the MVP version of the RSS Feed Reader app.
650+
This command instructs GitHub Copilot to begin implementing the tasks required for the MVP First strategy of the RSS Feed Reader app.
649651
650-
In this exercise, we ask you to implement all of the tasks for the MVP strategy using a single /speckit.implement command. In part, this is because we can't predict how many tasks and phases will be associated with the MVP in your tasks.md file. Although the RSS reader scenario is relatively simple, it's still significant and can take 20+ minutes for the implementation to complete (quicker than manual coding but requiring patience while the AI debugs its work). In a production environment, you would probably follow a phased approach, such as implementing the tasks for the Setup and Foundational phases first, and then implementing the tasks for the User Story phases one at a time.
652+
In this exercise, you implement all of the tasks for the MVP First strategy using a single /speckit.implement command. In part, this is because we can't predict how many tasks and phases will be associated with the MVP First strategy in your tasks.md file. Although the RSS feed reader scenario is relatively simple, it still include a significant task scope and can take 20-30 minutes for the implementation to complete (quicker than manual coding but it requires some patience while the AI debugs its work). In a production environment, you would probably follow a phased approach, such as implementing the tasks for the Setup and Foundational phases first, and then implementing the tasks for each User Story phase one at a time.
651653
652654
1. Monitor GitHub Copilot's response and provide assistance in the Chat view.
653655
654656
The agent builds the app incrementally, task by task, following the order defined in the tasks.md file.
655657
656-
> **NOTE**: GitHub Copilot is diligent about checking its work during the implementation, which is great. GitHub Copilot also keeps you involved during the implementation process. Requests for assistance occur frequently. The time required to complete the implementation can be affected by how quickly you respond to requests for assistance.
658+
> **NOTE**: GitHub Copilot is diligent about checking its work during the implementation, which is great, but can be time-consuming. GitHub Copilot also keeps you involved during the implementation process. Requests for assistance occur frequently. The time required to complete the implementation can be affected by how quickly you respond to requests for assistance/permission.
657659
658660
1. If manual testing is required to verify a task, perform the steps described in the Chat view, and then report the results back to GitHub Copilot.
659661
660662
You might encounter issues during manual testing. For example:
661663
662-
1. GitHub Copilot tells you that manual testing is required to verify that Feed URLs are working correctly.
664+
1. GitHub Copilot tells you that manual testing is required to verify that subscriptions can be added successfully.
663665
1. The backend application is already running locally on `http://localhost:5000`.
664666
1. You start the frontend application using Visual Studio Code's terminal. The frontend application starts successfully and is running on `http://localhost:5239`.
665-
1. You open a browser and navigate to the frontend application (for example, `http://localhost:5239`).
667+
1. You open a browser and navigate to the URL specified for the frontend application.
666668
1. When the page loads, it reports an error: "An unhandled error has occurred. Reload".
667669
1. You open the browser's developer tools to investigate further.
668670
1. In the developer tools console, you see the following error message:
@@ -689,9 +691,9 @@ Use the following steps to complete this task:
689691
690692
Continue to provide assistance until the issue is resolved. Once the issue is resolved, GitHub Copilot should ask you to resume manual testing.
691693
692-
1. Continue with the implementation workflow until all tasks required for the MVP application are complete.
694+
1. Continue with the implementation workflow until all tasks required for the MVP application are complete and the application is fully functional.
693695
694-
GitHub Copilot should notify in the Chat view when the MVP implementation is complete.
696+
GitHub Copilot should notify in the Chat view when the backend and frontend applications are fully functional.
695697
696698
1. Accept all changes made to the project files.
697699
@@ -709,7 +711,7 @@ Use the following steps to complete this task:
709711
710712
1. Use the launch configuration to run the backend and frontend applications.
711713
712-
If you encounter any errors, provide a detailed description of the error message and any relevant logs to GitHub Copilot for assistance.
714+
If you encounter any errors, provide a detailed description of the error message and any relevant logs to GitHub Copilot for assistance. You can launch the backend and frontend separately if needed.
713715
714716
1. Open a browser and navigate to the Subscriptions page of the frontend application.
715717
@@ -727,7 +729,7 @@ Use the following steps to complete this task:
727729
- https://devblogs.microsoft.com/oldnewthing/feed/ (The Old New Thing)
728730
- https://learn.microsoft.com/en-us/shows/feed.xml (Microsoft Learn / Shows)
729731
730-
You can find the acceptance scenarios in the spec.md file. The acceptance scenarios listed under the **User Scenarios & Testing** section. The MVP application is usually associated with the first user story (US1) in the spec.md file.
732+
You can find the acceptance scenarios in the spec.md file. The acceptance scenarios listed under the **User Scenarios & Testing** section.
731733
732734
For example, the acceptance scenarios for the MVP application might be similar to the following example:
733735

0 commit comments

Comments
 (0)