Software Enginering Assignment 2
Software Enginering Assignment 2
Software Enginering Assignment 2
Name:
Waleed ahmad
Roll No:
15277
Class:
BS (IT) 3rd Semester
Submitted to:
Mam Ambreen liaqat
Question: 1
Question: 2
User Requirements
The user requirements for a system should describe the functional and non-functional
requirements so that they are understandable by users who don’t have technical knowledge.
You should write user requirements in natural language supplied by simple tables, forms, and
intuitive diagrams.
The requirement document shouldn’t include details of the system design, and you shouldn’t use
any of software jargon, or formal notations.
System Requirements
The system requirements on the other hand are expanded version of the user requirements that are
used by software engineers as the starting point for the system design.
They add detail and explain how the user requirements should be provided by the system. They
The system requirements may also be written in natural language but other ways based on
Question: 3
Problems and challenges for software engineering. There are many possible challenges that
could be identified. These include,1 . Developing systems that are energy-efficient. This
makes them more usable on low power mobile devices and helps reduce the overall carbon
footprint of IT equipment.2. Developing validation techniques for simulation systems
(which will be essential inpredicting the extent and planning for climate change).3.
Developing systems for multicultural use. 4. Developing systems that can be adapted quickly to
new business needs5. Designing systems for outsourced development. 6. Developing systems
that are resistant to attack.7. Developing systems that can be adapted and configured by end-
users8. Finding ways of testing, validating and maintaining end-user developed systems.
Question: 4
Question: 6
If you are wholeheartedly against implementing software that invades the privacy
of others, then hopefully you can opt out of the project without losing your job.
Maybe your employer can convince you that the pros outweigh the cons for this
type of system and show you why they are acting in the public's best interest and
are not violating the Code of Ethics. Because of extreme variations in opinion, it is
hard to engineer software that everyone is going to agree with. For a doctor, the
ethics are a little simpler: do whatever you can to make a patient healthy. For
software engineers, there is a little more debate when it comes to ethics
Question: 7
Advantages of stories:
1. They represent real situations that often happen so the system will support the most common
user operations.
2. It is easy for users to understand and critique the stories.
3. They represent increments of functionality - implementing a story delivers some value to the
user.
Disadvantages of stories
1. They may be incomplete and their informal nature makes this in completeness difficult to see.
2. They focus on functional requirements rather than non-functional requirements.
3. Representing cross-cutting system requirements such as performance and reliability is
impossible when stories are used.
4. The relationship between the system architecture and the user stories is unclear so
architectural design is difficult
Question: 8