Introduction To SE Assignment 1
Introduction To SE Assignment 1
Assignment 1
MAHNOOR ZAHEER
FA19-BSE-053
Solution:
1st step: (communication) you talk to your client and collect the requirements that
are needed for the development of the project like does he only want to store the
data or want any other feature to be added to the software? In how much time he
needs this software to be ready?
2nd step: (planning) in this you estimate all the costs and the time you’ll take to
develop this software and the risks associated with it like not completing the task at
the given time and the resources you need to develop it.
3rd step: (modelling) you make the blueprint of the software means you make the
sketch of the software that’ll give you the idea of the work products and the result.
4th step: (construction) write the code to make a software that allows the client to
save the data of his sales. Then test it again and again until it gives the results
according to the requirements of the client. Make sure to do the acceptance and
automated tests as well.
5th step: (deployment) after you have completed the development and is satisfied
with the result hand it over to your client and leave him contended with your work.
The user should log into the system and can send or accept the friend request.
Solution:
Now, when we start our activities, then we can start with component 1(signup and
login). The requirements of this increment will be the personal details of the user
like full name, email address and phone number etc. This component undergoes
the phases of requirements gathering and analysis. When this component is ready,
we deliver this one component to the customer.
Component 1 i.e. the user can sign up and login is ready after the first increment.
After that, we add or increment another component 2 that sends the friend request.
This increment has requirements like search tool to search the name of the user that
you want to send the friend request to. When this component is ready, we deliver
this one component to the customer.
Component 2 i.e. the user can send friend request to other users is ready after the
second increment.
After that, we add or increment another component 3 that accepts a friend request.
This increment has requirements like allowing the user to see all the pending friend
requests and only accept the requests when the user allows the request to be
accepted. When this component is ready, we deliver this one component to the
customer.
Result: In this case study we observe that one system is produced and delivered to
the customer in increments and we have had total 3 increments to deliver this
project.
Case study of prototype model:
Let’s take an example of a person who has just started his business of import and
export and reaches to you so that you can make a software to help him keep the
record of his imports and exports.
Solution:
1st step: (communication) you talk to your client just so you can get little idea of
what he wants as he is not sure about his requirements. He is new to technology
and know nothing how to explain you what he wants in a software. So, you must
prepare a prototype to give an idea of the software to your client.
2nd step: (quick planning) you don’t have to think so much as you just want a
feedback from the client so do quick planning and plan a software that can simply
store the data of import and export of the client.
3rd step: (quick modelling) make a quick and simple sketch of the software as you
want a feedback from the client and have more time to work on the original
software.
4th step: (construction) now its time to implement the simple sketch of the code
and test it to make sure it is working without giving any errors. You don’t have to
worry about the coding standards as it is a throwaway prototype.
5th step: (deployment) meet with your client and give him your prototype so that
he can tell you want he thinks of it and can explain his requirements.
6th step: (feedback) by looking at the prototype the client will let you know if he
wants any changes and can give you a better idea of his requirements and if he
wants to add more features like changing the layout and adding the logo of the
company at the start of the document.
7th step: (original software) as this was your throwaway prototype so make sure to
make a new software with enhancement in planning and design as you have a
better idea of the requirements of the client now.
Result: So, you made the prototype with just one requirement that the client
wanted to store the data of his imports and exports and then he got the better view
of what he wants. And in this case creating the prototype was necessary because
the client was not sure about his requirements.
Case study of spiral model:
Function of railway reservation system:
Solution:
This phase involves the effective communication between the developer and the
user. All the requirement gathering, and problem identification is done in this
phase.
We might encounter the risk of not getting the clear idea of the requirements of the
client but the spiral model is an evolutionary model so we can overcome this
problem by using this model and getting the feedback from the client after every
sprint.
Hardware requirement:
• 256 MB RAM
• 1 GB on boot drive
• Intel Pentium
• GSM modem
Software requirement:
• MS windows
• Internet information server (its)
• My SQL server 200
• Visual studio.net
The risks that might involve in this phase are that you end up getting too much or
too less functional and non-functional requirements. So, after collecting the
requirements and resources do the proper risk assessment.
• The problem with the system can be automated. As well to make it more
efficient in use to the people who want to save their time and extra money
also.
• In online railway reservation system for booking the tickets online the
instanced users must enter details like their username and password.
• Once the username and password has been verified then he can enter the
main system, the destination date and no. of tickets.
• For money purpose h is asked for payment details.
• The user is also provided with the provision of cancelling where the amount
is credited back to his account.
You should have a clear idea of what you want to add to your software that can
contend the client so analyze the problem carefully and make sure to remove all
the risks like avoid adding less or more features that is required by the client and
that can be easily done when more members of the team are working on it as it is
the crucial step.
It starts with the conceptual design in the baseline spiral and involve architecture
design, logical design of modules, physical product design and final in the
subsequent spirals.
The risks that can be involved in this sprint are that you might choose the wrong
architecture for your software or you might forget to add the feature of adding the
money back to the user’s account on the cancelation of the ticket as this might not
cross the mind of the team. So, in the risk assessment make sure to check that in
the sketch you have added all the features of the software and have chosen the right
architecture.
It is required by the developer to use various technologies at the front end and
backend of the software, testing of that and provide user support. You might even
enhance your project by adding little utilities like get the feedback from the users
who have used the train and having the reservation on calls or on emails etc.
The risks that can be involved in this phase might be that while coding you skip the
coding standards and just focus on completing the code and while adding the little
facilities don’t switch your focus from the main requirements and invest more time
and money on the main features. The risk assessment in this phase can be made
easy by pair programming. So, risk assessment and the testing are used to check
the code and make sure that the layout and features of the software are well
developed.
After doing all the risks association, acceptance and automated tests you hand over
the software to the client and wait for the feedback.