Você está na página 1de 51

CS 301

Software Engineering – P2
Eswaran Narasimhan

Hello students

Lecture P2-1 and P2-2 refer to Software Requirements.

1
Lecture P2 - 1

2
Software Requirement Specification
What
Why
When Complete
Who documentation
Where of the need
How

Let us try to understand the SRS using the 5WH metaphor.

3
Software Requirement Specification
What
Why
When Functional
Who Non-Functional
Where User Interface
How

SRS contains the requirements across three dimensions.


Functional , Non-Functional and User Interface.

4
Functional
❑ Actor
❑ Stakeholder
❑ Primary Actor
❑ Preconditions Triggers
❑ Main success scenarios
❑ Alternative paths

All the business functions , its specifications and needs are represented using the Use
case diagram.

5
Functional

Additionally a context diagram also useful to give the context of the proposed
software and mark the system boundary as well.

6
Software Requirement Specification
What
Why
When Functional
Who Non-Functional
Where User Interface
How

While functional requirements are critical and useful to specify, acceptance of the
software and its successful usage depends on the achievements of the NFR – i.e.
Non-Functional Requirements.

7
Non-Functional Requirement

Performance, Scalability,
Capacity, Availability,
Reliability, Recoverability,
Maintainability,
Serviceability, Security,
Regulatory, Manageability,
Environmental
Data Integrity, Usability,
Interoperability

NFR also known in some literature as the –ilities of the SRS are many as listed above.

8
Non-Functional Requirement

Performance, Scalability,
Capacity, Availability

How good is the response of the software say after you submit – how long before the
next screen appears. Can the software handle many concurrent users? Is it equally
available all through the day?

9
Non-Functional Requirement

Reliability, Recoverability,
Maintainability,
Serviceability

How reliable is the software ? Does it show consistent performance? After a crash
does the software recover with ease and is at the same state as before. How easy it is
to service the software?

10
Non-Functional Requirement

Security, Regulatory,
Manageability,
Environmental
Data Integrity

Additional issues such as security and regulatory – for example in a banking software.
Does it make less demands on the power usage? Is the data integrity in the software?
Can it be easily hacked?

11
Non-Functional Requirement

Usability, Interoperability

https://www.rxtrace.com/2019/03/dscsa-interoperable-data-exchange-in-2023.html/

How usable is the software are menu options logical and easily accessible for
example. Are the screens easy to understand? Are fresh users finding it easy to learn
the usage of the software?
Does the software work in all environments? For example in all browsers?

12
Software Requirement Specification
What
Why
When Functional
Who Non-Functional
Where User Interface
How

13
User Interface Elements
Input Controls Navigational Components
➢ Checkboxes ➢ Breadcrumb
➢ Radio buttons ➢ Slider
➢ Dropdown lists ➢ Search field
➢ List boxes ➢ Pagination slider
Functional ➢ Buttons
➢ Toggles
➢ Tabs and Tags
➢ Icons
Non-Functional ➢ Text fields
➢ Date field Informational Components
User Interface ➢ Tooltips
➢ Icons
➢ Progress bar
➢ Notifications
➢ Message boxes
➢ Modal windows

SRS document details all the user interface screens. Appropriate use of correct
controls are important.

14
Software Requirement Specification
What
Why
When
Who Constraints
Where Standards
How

Additional operational constraints and the standard adhered to are required for
example accessibility standards for visually challenged.

15
Software Requirement Specification
What
Why
Communicate
When
Estimate
Who Refer
Where Arbitrate
How Enhance

SRS also is used for downstream communication, re-estimation of effort where


required, referring to incase dispute between various stakeholders and also enhance
when the development for the current requirements is completed.

16
Requirements Traceability Matrix
➢ Coverage
➢ Missing Requirements
➢ Missing Test cases
➢ Overdesigning
➢ Underdesigning

RTM allows one to check out requirements coverage, missing test cases and
identifying requirements missed etc.

17
Software Requirement Specification
What
Why
When On completion
Who of
Where Requirements
How Analysis
Yes,
Updates are possible

SRS documents can be updated depending methodology followed.

18
Software Requirement Specification
What
Why
Users
When
Designers
Who Management
Where Architects
Test Engineers
How

Many people user the SRS. Users and designers find immediate use. Management use
it for validating coverage and addressing conflicts if any.

19
Who uses SRS?

Users
Designers
Management
Architects
Test Engineers

20
Software Requirement Specification
What
Why
When
Who Development
Where Arena
How
Yes,
Online Publishing is ok

Online publishing is ok where teams are spread out.

21
Software Requirement Specification
Challenges

Multilingual
Multi-location
Timezones
Currency
Tech-Savvy

22
Software Requirement Specification

Multilingual

https://www.onehourtranslation.com/translation/blog/were-living-multilingual-world

Translations
Updates

When the software under consideration is to be used across multiple languages


issues of translation , maintaining concurrency of content and equivalence of version.
Languages have their own issues. Some are right to left (RTL) and some are left to
right (LTR), and yet some are top-to-bottom. Some are double byte while most are
single byte characters.

23
Software Requirement Specification

Multi-location

Locales customization
Local Flavour

When software is to be used across multiple locations, the local flavour needs to be
factored in . Items such as week day names, currency separator, currency marker,
temperature preferences units of measure preferred and date formats such as
DDMMYYYY or MMDDYYYY etc.

24
Software Requirement Specification

Timezones

https://en.wikipedia.org/wiki/Time_zone

With the involvement multiple time-zones management of time based activities such
as updates, upload/download requirement s become critical and difficult to execute.
Event management becomes challenging.

25
Software Requirement Specification

Currency

Conversion Rates
https://www.publicdomainpictures.net/en/view-image.php?image=215108&picture=world-coins-3

E-commerce websites have to be sensitive to currency requirements and also


currency exchange rate management become critical.

26
Software Requirement Specification

Tech-Savvy

https://tvtropes.org/pmwiki/pmwiki.php/Characters/DextersLaboratoryMajorCharacters

How tech savvy the consumers of SRS matters and the level of SRS document
detailing is therefore becomes important.

27
Lecture P2 - 2

28
Feasibility Evaluation
❑Organizational

❑Financial

❑Technical

Since SRS contains more details often feasibility studies are carried out. Three types
viz., Organizational, Financial and Technical are three types of feasibility studies.

29
Feasibility Evaluation
❑Organizational

➢ Capability
➢ Readiness
➢ Core Competency
➢ People Resource
➢ Facilities
➢ Operational Process
➢ Intellectual Property

30
Feasibility Evaluation Organizational
Is it a natural progression of the business?

➢ Capability
➢ Readiness Titan – Opening a Titan – Opening
➢ Core Competency new sports a new fashion
➢ People Resource equipment chain Jewelry
➢ Facilities
➢ Operational Process
➢ Intellectual Property

31
Feasibility Evaluation Organizational
Is it a natural progression of the business?

➢ Capability
➢ Readiness Titan – Opening a Titan – Opening
➢ Core Competency new sports a new fashion
➢ People Resource equipment chain Jewelry
➢ Facilities X
Titan – Opening a
➢ Operational Process new sports
➢ Intellectual Property equipment chain

32
Feasibility Evaluation Organizational

➢ Capability Will the business be ready to adopt new processes?


➢ Readiness
➢ Core Competency
➢ People Resource
➢ Facilities
➢ Operational Process
➢ Intellectual Property

33
Feasibility Evaluation Organizational

➢ Capability
➢ Readiness
Is the core competency of the business?
➢ Core Competency What is the core strength?
➢ People Resource
➢ Facilities
➢ Operational Process
➢ Intellectual Property

34
Feasibility Evaluation Organizational

➢ Capability
➢ Readiness
➢ Core Competency
➢ People Resource Learning curve in terms of training
Amount of time spent by users
➢ Facilities Training time and cost of upskilling?
➢ Operational Process
➢ Intellectual Property

35
Feasibility Evaluation Organizational

➢ Capability
➢ Readiness
➢ Core Competency
➢ People Resource
➢ Facilities
➢ Operational Process Will new facilities be created?
Recurring cost of new facilities
➢ Intellectual Property How many more employees to be recruited?

36
Feasibility Evaluation Organizational

➢ Capability
➢ Readiness
➢ Core Competency
➢ People Resource
➢ Facilities
➢ Operational Process
What will be the change in operational processes?
➢ Intellectual Property What are the regulatory impacts?

37
Feasibility Evaluation Organizational

➢ Capability
➢ Readiness
➢ Core Competency
➢ People Resource
➢ Facilities
➢ Operational Process
➢ Intellectual Property Will the company acquire a valuable IP?
Can that be monetized?

38
Feasibility Evaluation
➢ Return on
Investment
➢ Cashflow impact
➢ Licensing costs
➢ IP Ownership
❑Financial ➢ Opportunity for
resale

https://www.fiverr.com/mzubairsyed/prepare-a-
financial-feasibility

39
Feasibility Evaluation Financial
What will be the ROI?
➢ Return on Will it reduce operational costs?
Investment Will it improve topline?
Are there any regulatory
➢ Cashflow impact
➢ Licensing costs
➢ IP Ownership
➢ Opportunity for
resale

40
Feasibility Evaluation Financial
➢ Return on
Investment Will it reduce loan burden?
➢ Cashflow impact Will it improve cash flow?
➢ Licensing costs How much will the float increase?

➢ IP Ownership
➢ Opportunity for
resale

41
Feasibility Evaluation Financial
➢ Return on
Investment
➢ Cashflow impact How are the licensing costs increasing?
➢ Licensing costs Will it result in a vendor lock-in ?
➢ IP Ownership What are the commercial impacts?
➢ Opportunity for
resale

42
Feasibility Evaluation Financial
➢ Return on
Investment
➢ Cashflow impact
➢ Licensing costs Who retains the Intellectual Property?
➢ IP Ownership Can it be monetized?
➢ Opportunity for Can IP be enforced in my jurisdiction?
resale

43
Feasibility Evaluation Financial
➢ Return on
Investment
➢ Cashflow impact
➢ Licensing costs
➢ IP Ownership
➢ Opportunity for Can the product be resold?
What are the resale prospects?
resale

44
Feasibility Evaluation

➢ Interoperability
➢ Technical maturity
➢ Technical skills
➢ Architectural
compatibility
➢ Technical Debt
❑Technical
➢ Vendor Lock-in

45
Feasibility Evaluation Technical
➢ Interoperability Can the product work with organizational landscape?
Will it affect BYOD policies?
➢ Technical maturity
➢ Technical skills
➢ Architectural
compatibility
➢ Technical Debt
➢ Vendor Lock-in

46
Feasibility Evaluation Technical
➢ Interoperability
➢ Technical maturity How mature is the technology?
➢ Technical skills Are competitors using the same?
What is the roadmap of the underlying technology?
➢ Architectural
compatibility
➢ Technical Debt
➢ Vendor Lock-in

47
Feasibility Evaluation Technical
➢ Interoperability
➢ Technical maturity
➢ Technical skills Can the technologies be learnt by the employees?
How much dependency on the skill market?
➢ Architectural
In house training vs market pickup
compatibility
➢ Technical Debt
➢ Vendor Lock-in

48
Feasibility Evaluation Technical
➢ Interoperability
➢ Technical maturity
➢ Technical skills
➢ Architectural Will the changes in architecture be minimal?
compatibility Will there be architectural co-existence?
Will there be multiple architectures in the organization?
➢ Technical Debt
➢ Vendor Lock-in

49
Feasibility Evaluation Technical
➢ Interoperability
➢ Technical maturity
➢ Technical skills
➢ Architectural
compatibility
➢ Technical Debt By investing in this technology is money really being
saved?
➢ Vendor Lock-in How much of technical debt is being created?

50
Feasibility Evaluation Technical
➢ Interoperability
➢ Technical maturity
➢ Technical skills
➢ Architectural
compatibility
➢ Technical Debt
➢ Vendor Lock-in Are there other vendors who offer the same support?
Will it increase dependency on one vendor?

51

Você também pode gostar