Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
FACULTY OF ENGINEERING
SOFTWARE DEPARTMENT
Academic Year
2016/2017 spring
SE513
PREPARED BY
SYED UZAIR AHMAD
ASSIGNMENT 1
STUDENT ID
1 | Page
ABSTRACT
Requirements define the function of the system from the client's viewpoint.
The requirements establish the system's functionality, constraints, and goals
by consultant with the client, customers, and users. The requirements may
be developed in a self-contained study, or may emerge incrementally. The
requirements form the basis for acceptance teasing. The development team
and the client need to work together closely during the requirements phase
of a so(ware project.
2 | Page
CONTENTS
ABSTRACT........................................................................................................ 2
Chapter 1......................................................................................................... 5
1. Definition of Requirements engineering (RE).............................................5
2. Min goal of Software Requirements Engineering?......................................5
3. Software Engineering Goals.......................................................................7
Chapter 2......................................................................................................... 8
2.1 Introduction......................................................................................... 8
2.2 Two kinds of requirements...................................................................8
2.2.1 User requirements.........................................................................8
2.2.2 System requirements....................................................................8
2.3 Three classes of requirements:............................................................8
2.3.1 Functional requirements................................................................8
2.3.2 Nonfunctional requirements..........................................................9
2.3.3 Domain requirements....................................................................9
Chapter 3....................................................................................................... 10
3.1 Introduction....................................................................................... 10
3.1.1 Cost reduction............................................................................. 10
3.1.2 Low training costs.......................................................................11
3.1.3 Increased flexibility.....................................................................11
3.1.4 Competitive advantage...............................................................11
3.1.5 Increased company value............................................................11
REFERENCES.................................................................................................. 13
3 | Page
4 | Page
Chapter 1
The goal of the requirements engineering process is to create and maintain a system
requirements document. The overall process includes four high-level requirements
engineering sub-processes.
These are concerned with assessing whether the system is useful to the business
(feasibility study)
Checking that the requirements actually define the system that the customer wants
(validation).
5 | Page
Figure 1.1 illustrates the relationship between these activities. It also shows the
documents produced at each stage of the requirements engineering process. The people
involved develop a better understanding of what they want the software to do; the
organization buying the system changes; modifications are made to the systems
hardware, software and organizational environment. The process of managing these
changing requirements is called requirements management.
6 | Page
Figure 1.2 Spiral model of requirements engineering processes
This model allows the requirements and the system implementation to be developed
together. Some people consider requirements engineering to be the process of applying a
structured analysis method such as object-oriented analysis (Larman, 2002). This
involves analyzing the system and developing a set of graphical system models, such as
use-case models, that then serve as a system specification. The set of models describes
the behavior of the system and are annotated with additional information describing, for
example, its required performance or reliability. Although structured methods have a role
to play in the requirements engineering process, there is much more to requirements
engineering than is covered by these methods. Requirements elicitation, in particular, is a
human-centered activity and people dislike the constraints imposed by rigid system
models.
Goals are seen to have substantial promise in aiding the elicitation and
elaboration of requirements. For example, the [KAOS]* methodology
uses goal as the central concept in requirements acquisition. Anton
also uses goals as the main guiding concept in developing
requirements specifications
a) Readability
b) Correctness
c) Reliability
d) Reusability
7 | Page
e) Extensibility
f) Flexibility
g) Efficiency
Chapter 2
FUNDAMENTAL OF SOFTWARE
REQUIREMENTS
2.1 Introduction
8 | Page
constraints. The system requirements document (sometimes
called a functional specification) should define exactly what is to
be implemented. It may be part of the contract between the
system buyer and the software developers.
Functional requirements describe the functions that the software is to execute; for
example, formatting some text or modulating a signal. They are sometimes known as
capabilities or features. A functional requirement can also be described as one for which a
finite set of test steps can be written to validate its behaviour.
Non-functional requirements are the ones that act to constrain the solution. Non-
functional requirements are sometimes known as constraints or quality requirements.
They can be further classified according to whether they are performance requirements,
maintainability requirements, safety requirements, reliability requirements, security
requirements, interoperability requirements or one of many other types of software
requirements.
9 | Page
Chapter 3
3.1 Introduction
Software development is a process of writing and maintaining the source code, but in a
broader sense, it includes all that is involved between the conception of the desired
software through to the final manifestation of the software, sometimes in a planned and
structured process. Therefore, software development may include research, new
development, prototyping, modification, reuse, re-engineering, maintenance, or any other
activities that result in software products.
Software can be developed for a variety of purposes, the three most common being to meet
specific needs of a( specific client)business (the case with custom software), to meet a
perceived need of some set of potential users (the case with commercial and open source
software).
10 | P a g e
Software development is an essential aspect which helps any business to work finely. It
allows you to automate your business and increase your productivity with less effort. The
customized software packages are made to flourish your business and help you fulfill most
of your requirements.
3.1.1 Cost reduction
The technology offers cost economy by reducing resource requirements thus, improving
productivity and decreasing licensing fees. When you help out in the design of the
software, it is then developed particularly for the growth of your business. This reduces
the training costs and also improves the productivity of the software. When you buy a
pre-written software application, you only have a license to use the software. The
development services team offers you software applications that you own. Since the
product is absolutely your own, you may change the cost of the product and its
upgradation.
11 | P a g e
Your business and rise above the competition level.
12 | P a g e
REFERENCES
Books
13 | P a g e
Sommerville, Ian oftware engineering / Ian Sommerville. 9th edition
Web links
www.swebokwiki.org/Chapter_1:_Software_Requirements
www.cs.ccsu.edu/~stan/classes/cs530/notes14/04-
requirements.htmhttp://swebokwiki.org/Chapter_1:_Software_Requirementswww.springe
r.com/us/book/9783642125775
http://www.selectbs.com/analysis-and-design/what-is-a-software-development-process).
http://blogginggateway.blogspot.com.cy/2012/03/5-benefits-of-software-development-
you.html
http://blogginggateway.blogspot.com.cy/2012/03/5-benefits-of-software-development-
you.html
14 | P a g e
8
15 | P a g e
16 | P a g e