100% satisfaction guarantee Immediately available after payment Both online and in PDF No strings attached
logo-home
SOEN 341 Final Exam 2023 with complete solution $11.49   Add to cart

Exam (elaborations)

SOEN 341 Final Exam 2023 with complete solution

 16 views  0 purchase
  • Course
  • Institution

SOEN 341 Final Exam 2023 with complete solution What are the 4 main Software process activities? Give their definition as well. 1) Specification: Know what we want to develop by asking the customer (What should do the system do?) 2) Development: Design what the customer wants. In other words...

[Show more]

Preview 2 out of 11  pages

  • April 17, 2023
  • 11
  • 2022/2023
  • Exam (elaborations)
  • Questions & answers
avatar-seller
SOEN 341 Final Exam 2023 with complete solution
What are the 4 main Software process activities? Give their definition as well.
1) Specification: Know what we want to develop by asking the customer (What should
do the system do?)

2) Development: Design what the customer wants. In other words, get the specification
to be realized (program it).

3) Validation: Now that we have the code, we need to do testing. Try to break the
system to ensure it is what the customer requires.

4) Evolution: Software needs to be maintained or refactored. It can also be reacting to
change in market to update/upgrade your software accordingly. Can also be a new
feature your customer wants.
What's the difference between building vs growing software?
In building, you plan everything before starting but this fails when it comes to software.

In growing you start with simple system that works and grow it.
Name all 3 models (traditional) we have ever talked about and give at least 1 pro and 1
con.
Waterfall Model: There are 5 steps, you must complete the step in order to move onto
the next step. With each step completed, there will be documents to write.
- Requirement
- System/Software design
_ Implementation/Unit testing
_ Integration/System testing
_ Operation/Maintenance

Pro: Good for small system, also good for embedded system
Con: Fails because it's document driven, also last min changes requires a lot of rework.

Prototype Model: This helps gather feedback from customer because you develop
quickly ignoring any error checking. The goal is to check if customer requirement and if
it's doable.

Pro: Close match to user's real needs, also reduce development effort.
Con: Undocumented, also design might get worse through rapid changes.

Incremental Development: Unlike waterfall where you deliver the system as a single
delivery, in incremental for each functionality you add, you deliver the product as well so
this way the progress is visible to the client for feedback. It is comprise of 3 things.
- Specification
- Implementation
- Validation

, Pro: lower risk of project failure, also customer value
Con: Hard to identify common facilities that re needed by all increments.
Why did people come up with Agile? What are the benefits? What are the 2 models that
are agile?
To deliver the software to the client faster.

Testing are inter-leaved, developing as a series of versions/increments, frequent
deliver, extensive tool support (Travis CI) and minimal documentation.

The 2 models that are agile are: XP (Extreme Programming) and Scrum
What are the 4 things that make Agile?
Individual and interaction: Build project around motivated people, support dev when
there is problem and tell them they can do this! Give them help if they need it.

Working software: Customer is the first priority therefore continuous delivery for even
minor changes is good enough to make the customer happy.

Customer collaboration: Work with customer daily! (Customer on the site)

Responding to change: Keep adjusting yourself, maybe first sprint you made mistake so
fix in the next sprint.
XP (Extreme programing) was a failure but Agile development still uses practices from
XP. What are those 4 key practices? Define them as well.
User stories: Customer is part of the team and is responsible for making decision
therefore the requirements are expressed as user stories.

Refactoring: Improving code by removing duplicates, renaming variables etc..

Test-first development: Write tests before writing code! This clarifies the requirement to
be implemented.

Pair-programming: Programmer sit together on the same computer to develop code
together. Ex: One can code while the other is watching.
What are the difference between Plan-driven vs Agile development
Plan-drive: Separate development stages with the outputs to be produced at each of
these stages planned in advance.

Agile: Output is always a working software.
What is Scrum process?
Brings a lot of people together, therefore you have lots of meetings (daily) and discuss
the progress. Basically you have planing where you decide which user story you want to
work then you finish that in the sprint and when the sprint is finish the software should
be working. The you pick another sprint and repeat the process.
What's the different between Agile requirement and Traditional requirement?
In agile requirement, we focus more on what people think therefore we have more
meeting.

The benefits of buying summaries with Stuvia:

Guaranteed quality through customer reviews

Guaranteed quality through customer reviews

Stuvia customers have reviewed more than 700,000 summaries. This how you know that you are buying the best documents.

Quick and easy check-out

Quick and easy check-out

You can quickly pay through credit card or Stuvia-credit for the summaries. There is no membership needed.

Focus on what matters

Focus on what matters

Your fellow students write the study notes themselves, which is why the documents are always reliable and up-to-date. This ensures you quickly get to the core!

Frequently asked questions

What do I get when I buy this document?

You get a PDF, available immediately after your purchase. The purchased document is accessible anytime, anywhere and indefinitely through your profile.

Satisfaction guarantee: how does it work?

Our satisfaction guarantee ensures that you always find a study document that suits you well. You fill out a form, and our customer service team takes care of the rest.

Who am I buying these notes from?

Stuvia is a marketplace, so you are not buying this document from us, but from seller magdamwikash23. Stuvia facilitates payment to the seller.

Will I be stuck with a subscription?

No, you only buy these notes for $11.49. You're not tied to anything after your purchase.

Can Stuvia be trusted?

4.6 stars on Google & Trustpilot (+1000 reviews)

81503 documents were sold in the last 30 days

Founded in 2010, the go-to place to buy study notes for 14 years now

Start selling
$11.49
  • (0)
  Add to cart