vault backup: 2024-10-16 09:12:37

This commit is contained in:
boris
2024-10-16 09:12:37 +01:00
parent bad31f35c5
commit 124e0b67ef
190 changed files with 192115 additions and 0 deletions

View File

@@ -0,0 +1,136 @@
- Requirements
- Design
- Implementation
- Verification
- Maintenance
No step can be done without it's pre-requisites.
# Intro to Agile
Plan, Analyse, Design, Build, Test, Deploy
This repeats in a given timebox, building on previous iterations.
## Scrum Method
Product Backlog -> Sprint Backlog -> 2-4 Weeks, with daily Scrum meetings -> Potentially Shippable Product Increment
## Requirements
- Process of establishing
- Services that customer requires
- Constraints under which it operates or is developed
- Requirements
- Descriptions of services and constraints
- Generated during requirements process
### Functional Vs Non-Functional Requirements
#### Functional
- Statements of services system should provide, how system should react to inputs, how system should behave
- May state what system should not do
- Describe functionality or system services.
- Depend on type of software, expected users and type of system where software is used.
- Functional user requirements may be high-level statements of what system should do.
- Functional system requirements should describe system services in detail.
#### Non-Functional
- Constrains on services or functions offered by system such as timing, development process, standards, etc.
- Often apply to the system as a whole rather than features of services.
#### Domain Requirements
id1((Some text))
- Constraints on the system from domain of operation
### Use Case Diagram
- Use Cases
- Tool for modelling requirement gathering
- Abstraction focused on user interaction
- System design / internal structure not evaluated.
- Detailed description of user interaction
- Use Case Diagrams
- Comprise actors and use case titles
- Lines show which actors permitted to execute each use case.
- Actor: Anyone / Anything with behaviour
- Use Case: Contract for behaviour of the system
#### Car Rental System Example
- ![](Pasted%20image%2020240920114400.png)
# Workshop
Identify name and actors
For each actor, identify and name use cases
Draw use case diagram
## Example 1
Actors:
- Students
- Register
- Transfer
- Lecturers
- Upload Marks
- Administrators
- Assign Module
- Ratify Marks
```mermaid
flowchart LR
std[/Students/] === rg([Registration])
std === trm([Transfer Module])
lec[/Lecturers/] === um([Upload Marks])
adm[/Administrators/] === am([Assign Module])
adm === rm([Ratify Marks])
```
## Example 2
Actors:
- Senior Librarians
- Archiving Holdings
- Purchasing Holdings
- Librarians
- Register Holdings
- Borrowers
- Borrow Holdings
- Return Holdings
```mermaid
flowchart LR
sl[/Senior Librarian/] === ar([Archiving])
sl === pc[(Purchasing)]
lb[/Librarians/] === rgh([Register Holdings])
bw[/Borrowers/] === bh([Borrow Holdings])
bw === rth([Return Holdings])
```
## Example 3
Actors:
- Travelers
- Cancellations
- Search
- Book
- Reserve
- Frequent Fliers
- Cancellations
```mermaid
flowchart LR
A[/Travellers/] ==== B([Search])
A ==== C([Book])
A ==== D([Reserve])
A ===== E([Cancel])
F[/Frequent Fliers/] ===== E
```

View File

@@ -0,0 +1,200 @@
# 1
Name: Student Record Information System
Objects:
- Student
- ID
- Lecturer
- ID
- Module
- Lecturer Name
- Year
- Marks[]
- Optional Module
- transferTo()
- transferFrom()
Classes:
- Person
- First Name
- Last Name
- Programme
- register()
Relationships:
- Person 1-1 Student
- Person 1-1 Lecturer
- Programme M-1 Module
- Module 1-1 Optional Module
```mermaid
---
title: Student Record Information System
---
erDiagram
Person ||--o| Student : is
Person ||--o| Lecturer : is
Programme }|--|| Module : has
Module ||--o| OptionalModule : could_be
OptionalModule {
bool transferFrom()
bool transferTo()
}
Module {
string LecturerName
int Year
int[] Marks
}
Programme {
bool register()
}
Lecturer {
string ID
}
Student {
string ID
}
Person {
string FirstName
string LastName
}
%%{init:{'theme':'dark'}}%%
```
# 2
Name: Library Information System
Objects:
- Book
- ISBN
- Recording
- Duration
- Magazine
- Journal
- ISSN
- Serial
- Issue Number
Class:
- Holding
- Title
- Keywords
- Type
- Register()
Relationships:
- Holding 1-1 Book
- Holding 1-1 Recording
- Holding 1-1 Serial
- Serial 1-1 Journal
- Serial 1-1 Magazine
```mermaid
---
title: Library Information System
---
erDiagram
Holding ||--|| Book : is
Holding ||--|| Recording : is
Holding ||--|| Serial : is
Serial ||--|| Journal : has
Serial ||--|| Magazine : has
Holding {
string Title
string[] Keywords
string Type
bool register()
}
Book {
string ISBN
}
Recording {
int Duration
}
Serial {
int issueNumber
}
Journal {
string ISSN
}
Magazine {
}
%%{init:{'theme':'dark'}}%%
```
# 3
Name: Flight Travel Booking System
Objects:
- Flight
- Departure Location
- Arrival Location
- Flight Number
- Departure Date
- Arrival Date
- Hotel
- Departure Date
- Arrival Date
- Room Number
- Guest Count
- Flight Booking
- eTicket
- Flight Reservation
- Hotel Booking
- Hotel Reservation
- Transaction ID
Class:
- Contract
- ID
Relationships:
All 1-1
```mermaid
---
title: Flight Travel Booking System
---
erDiagram
Contract ||--|| Flight : books
Contract ||--|| Hotel : books
Flight ||--|| Flight_Booking : has
Flight ||--|| Flight_Reservation : reserves
Hotel ||--|| Hotel_Booking : has
Hotel ||--|| Hotel_Reservation : reserves
Contract {
string ContractID
}
Flight {
string departureDestination
string arrivalDestination
int flightNumber
date departureDate
date arrivalDate
}
Hotel {
date departureDate
date arrivalDAte
int roomNumber
int guestCount
}
Flight_Booking {
int eticketNumber
}
Hotel_Reservation {
int transactionID
}
%%{init:{'theme':'dark'}}%%
```

View File

@@ -0,0 +1,25 @@
- Non functional requirements
- Create around constraints
- Functional requirements
- Use test criteria rather than implementation details
- Analyse Scenario
- Write User Story
- Describe questions for client
# 1
As a student, I want to register for a programme in order to obtain a degree.
How should programmes be displayed to the student?
How should the student be notified about programme enrollment?
What details given to student?
As a student, I want to transfer module to better fit my career outcomes.
How should modules be displayed to student?
How should students be notified?
# 3