Requirements-Engineering-Cheat Sheet PDF

Title Requirements-Engineering-Cheat Sheet
Course Requirements Engineering
Institution Cork Institute of Technology
Pages 16
File Size 173.5 KB
File Type PDF
Total Downloads 6
Total Views 156

Summary

Whole Req Eng module summarized down to need to know info...


Description

Requirements Engineering Revision

Requirements Engineering....................................................................................................................1 Question 1: Agile and waterfall software requirements methods.........................................................2 Waterfall:...............................................................................................................................................2 Advantages of Waterfall........................................................................................................................2 Disadvantages of Waterfall....................................................................................................................2 Agile:..................................................................................................................................................... 3 Advantages of Agile:..............................................................................................................................3 Disadvantages of Agile:..........................................................................................................................3 Agile principles......................................................................................................................................4 5 whys...................................................................................................................................................5 Question 2: Requirements.....................................................................................................................6 Functional..............................................................................................................................................6 Non-Functional......................................................................................................................................7 Question 3: Use Case Models and Diagrams.........................................................................................8 Use Case Models:..................................................................................................................................8 Use Case Diagrams:...............................................................................................................................8 Advantages of using Use Case Models and Diagrams:...........................................................................9 Question 4: Elicitation Techniques.......................................................................................................10 Why analyse existing system ?.............................................................................................................10 What you can do.................................................................................................................................10 Question 5: User Story Map and User Stories.....................................................................................11 Story maps...........................................................................................................................................11 Story Map structure:...........................................................................................................................11 Why use story map.............................................................................................................................. 11 Example of story map..........................................................................................................................11 User Stories......................................................................................................................................... 12 What is a user story.............................................................................................................................12 User story template.............................................................................................................................12

Why write user stories.........................................................................................................................12 How are user stories composed ( 3 Cs )...............................................................................................12

Question 1: Agile and waterfall software requirements methods. Waterfall: Waterfall method, also known as the traditional approach is a linear 5 step process where each step is completed once and only provides the finalized project once all steps are completed Steps are: 1.

Requirements analysis

2.

Design

3.

Development

4.

Testing

5.

Maintenance

Advantages of Waterfall 1.

Planning and designing is more straightforward as customers and developers agree on what will be delivered early in the development lifecycle

2.

Progress is measured more easily as can see the full scope from the beginning

3.

Customer presence not needed once development and design process complete at the beginning

4.

Less likelihood of “ piecemeal effect”which occurs when different sections are developed separately and do not fil together at the end when combined

Disadvantages of Waterfall 1.

Requirements are often not very effective

2.

Customers can be intimidated by amount of detail needed at the beginning

3.

Customer may not like the end product based on confusion caused when designing it at the beginning as they were not part of the development process since then.

Agile: Agile is a specific type of RAD (rapid application development) that is based on the division of tasks in a project into short phases (sprints) and frequent reassessment and adaption of plans

Advantages of Agile: 1.

Customer has strong sense of ownership as always part of the development cycle

2.

Can release features as completed rather than waiting until the end

3.

Easily adaptable

4.

More engaging for customers and developers

Disadvantages of Agile: 1.

Large amount of customer involvement needed, time consuming

2.

Requires full dedication of developers in terms of focus and time to be properly effective

3.

Often takes longer due to sprints changing or going over the time frame allotted

4.

Can be hard to manage if dealing with remote workers as works best with face to face collaboration

Agile principles

1.

Customer satisfaction through early and continuous software delivery –Customers are happier when they receive working software at regular intervals, rather than waiting extended periods of time between releases.

2.

Accommodate changing requirements throughout the development process –The abi l i t yt oav oi ddel ay swhenar equirement or feature request changes.

3.

Frequent delivery of working software –Scrum accommodates this principle since the team operates in software sprints or iterations that ensure regular delivery of working software.

4.

Collaboration between the business stakeholders and developers throughout the project -Better decisions are made when the business and technical team are aligned.

5.

Support, trust, and motivate the people involved –Motivated teams are more likely to deliver their best work than unhappy teams.

6.

Enable face-to-face interactions –Communication is more successful when development teams are co-located.

7.

Working software is the primary measure of progress –Delivering functional software to the customer is the ultimate factor that measures progress.

8.

Agile processes to support a consistent development pace –Teams establish a repeatable and maintainable speed at which they can deliver working software, and they repeat it with each release.

9.

Attention to technical detail and design enhances agility –Theright skills and good design ensures the team can maintain the pace, constantly improve the product, and sustain change

10. Simplicity –Develop just enough to get the job done for right now.

11. Self-organizing teams encourage great architectures, requirements, and designs – Skilled and motivated team members who have decision-making power, take ownership, communicate regularly with other team members, and share ideas that deliver quality products.

12. Regular reflections on how to become more effective –Self-improvement, process improvement, advancing skills, and techniques help team members work more efficiently.

5 whys

The 5 whys is a useful process that can be used to help with problem analysis in terms of discovering the underlying root cause

This helps with gaining a better understanding before development begins along with helping to ensure the right solution is found and minimizes extra work later.

How to complete the 5 whys: 1.

Write down the specific problem

2.

Asks why the problem happens and write answer below

3.

If the answer doesn’ tundercover the root issue, then that also is a problem so you then need to write the answer to solve that problem below it

4.

Repeat until you have the root issue

Example:

1.

Why?-The battery is dead. (first why)

2.

Why?-The alternator is not functioning. (second why)

3.

Why?-The alternator belt has broken. (third why)

4.

Why?-The alternator belt was well beyond its useful service life and not replaced. (fourth why)

5.

Why?-The vehicle was not maintained according to the recommended service schedule. (fifth why, a root cause)

6.

Why?-Replacement parts are not available because of the extreme age of the vehicle. (sixth why, optional footnote)

Question 2: Requirements Functional

Any requirement that specifics what a system should do

1.

Business Rules

2.

Transaction corrections, adjustments and cancellations

3.

Administrative functions

4.

Authentication

5.

Authorization levels

6.

Audit Tracking

7.

External Interfaces

8.

Certification Requirements

9.

Reporting Requirements

10.

Historical Data

11.

Legal or Regulatory Requirements

EX:

1.

sent email when customer signs up

2.

Open a new account

3.

If a patient is allergic to medication then prescription of that medication shall result in warning message being issued to pharmacy to notify customer

Non-Functional

Any requirement that specifies how the system performs a certain function

1.

Performance –f orexampl e:r espons et i me,t hr oughput ,ut i l i zat i on,st at i cv ol umet r i c

2.

Scalability

3.

Capacity

4.

Availability

5.

Reliability

6.

Recoverability

7.

Maintainability

8.

Serviceability

9.

Security

10.

Regulatory

EX: 1.

Emails should be sent with a latency of no greater than 2 hours from when customer signs up

2.

A new customer account is created within 10 seconds of a customer pressing the sign up button

3.

The system should be available in all pharmacies during normal working hours.

Question 3: Use Case Models and Diagrams

Use Case Models:

A model is a simplification of reality

Modelling helps achieve: 1.

Visualize system

2.

Specify structure or behaviour of system

3.

Gives a template for developing system

4.

Documents the decisions made

Contains Actors which can be primary or secondary

Primary actors are used to complete the goal Secondary actors assist the primary actor in completing the goal

EX: Buying an item in a shop Primary actor –customer Secondary actor –customer service assistant working in the shop as they help the customer buy the item by putting through the sale

Advantages of using Use Case Models and Diagrams:

1.

Give context for requirements

2.

Help verify that all requirements are captured.

3.

Are easy to understand.

4.

Use terminology that customers and users understand.

5.

Tell concrete stories of system use.

6.

Verify stakeholder understanding

7.

Aid team communication and understanding.

8.

Facilitate agreement with customers.

9.

Facilitate the creation of test cases, documentation, and design

10.

Facilitate requirements reuse

Question 4: Elicitation Techniques Requi r ement sel i ci t at i oni st hepr ac t i c eofc ol l ect i ngt her equi r ement sofas y s t em f r om user s , c us t omer sandot hers t ak ehol der s.

Thepr act i cei sal s os omet i mesr ef er r edt oas" r equi r ementgat her i ng" .

Why analyse existing system ? 1.

Take into account real usage patterns

2.

Key features/ tasks

3.

Catch obvious improvements

What you can do 1.

Read available documentation –manuals, memos, development documents etc

2.

Observation –shadow specialists using the system

3.

Questionnaires

4.

Interviews - Record, discover , reassure

5.

Brainstorming

6.

Prototyping

Question 5: User Story Map and User Stories Story maps

Story Map structure:

Vision > Goals > Activities > Tasks > Stories

1.

A vision is achieved via goals

2.

Goals are reached by completing activities

3.

To complete an activity users need to perform tasks

4.

These tasks are transformed into user stories for software development

Why use story map

1.

Allows you to see the bigger picture in your backlog

2.

Helps with prioritizing backlog

3.

Encourages iterative development approach

4.

Useful visual representation of project plan

Example of story map

User Stories

What is a user story

A user story is a small piece of system functionality, in a simple sentence

Answers three important questions: 1.

Who are you building this for

2.

What are you building

3.

Why are you building this

User story template As a , I < some goal> so that

Examples: As a customer, I want to place an order for some food so that I can eat dinner

As a frequent jogger, I want to be able to track my number of steps so that I can monitor by overall fitness from that workout

Why write user stories

1.

Placeholder to have a conversation with our users about what they need

2.

Helps gets the needs from users

3.

Tool for tracking and scheduling work

4.

Helps promote a dialogue

How are user stories composed ( 3 Cs )

They are composed of three aspects 1.

Card - written description of story

2.

Conversation –fleshes out the details of the story

3.

Criteria - tests that confirm details that can be used to determine when a story is complete...


Similar Free PDFs