100% satisfaction guarantee Immediately available after payment Both online and in PDF No strings attached 4.6 TrustPilot
logo-home
Summary

Samenvatting Systeemontwikkelingsmethoden (INFOBSOM)

Rating
-
Sold
2
Pages
19
Uploaded on
27-05-2021
Written in
2020/2021

Stof voor midterm van SOM

Institution
Course










Whoops! We can’t load your doc right now. Try again or contact support.

Written for

Institution
Study
Course

Document information

Uploaded on
May 27, 2021
Number of pages
19
Written in
2020/2021
Type
Summary

Subjects

Content preview

SOM SV
Isabelle van Aard


102 – Programming tools .
➢ When designing software, you use programming language features that help you structure
code. Python → functions, classes and modules
➢ Function (def)
o Groups related code and provides a generic interface to that code via parameters
and return values
➢ Module (import)
o Groups functions and constants that are useful in other parts of an application.
▪ The math module is a collection of mathematical constants and functions
➢ Class
o Groups functions and data that belong together
➢ Inheritance
o Class inheritance allows you to indicate that certain types are related and should
behave the same.
▪ Bv rectangle and circle are both shapes of which you can compute an area
➢ A class should act purely as a contract of how [shapes] are implemented, not as an actual
representation of a shape.
➢ Abstract base classes
o Most OO languages have a concept abstract class to cover this case. Abstract classes
are the same as regular classes, but you can’t make instances of them.
o They serve as an interface. You can specify the structure of your code without
having to actually implement it. → shape defines what the area method looks like,
but there is no implementation yet.

103 – Development processes (Waterfall and RUP)

➢ Waterfall model
1. Requirements analysis
2. Design
3. Coding and debugging
4. Testing and verification
5. Maintenance
➢ Criticism on waterfall model
o Waterfall model aims to complete every phase before moving on to the next
o Critics: model is not robust against change
▪ Client can change mind halfway through project
▪ Money can run out
▪ Design can turn out to be too costly or complex to implement
➢ Alternatives to waterfall model:
o The (Rational) Unified Process (RUP)
o Extreme Programming
o Scrum
o Kanban
o Do whatever

1

,➢ The (Rational) Unified Process
o Popular development process for many years
o Components of RUP can be adapted to work with other methodologies such as Agile
→ nice foundation
o Emphasizes iterative software development. Develop software in time-boxed mini-
projects called iterations. Each iteration has clearly defined milestones, including a
tested, integrated, executable system
o The iterative lifecycle is based on the successive enlargement and refinement of a
system through multiple iterations with feedback and adaptation. The system grows
incrementally over time, iteration by iteration. The system may take many iterations
to be production ready
o The output of an iteration is not (just) an experimental prototype but a production
subset of the final system. Each iteration tackles new requirements and
incrementally extends the system. An iteration may occasionally revisit existing
software and improve it.
o Stakeholders usually have changing requirements (end users, project management).
Each iteration involves choosing a small subset of the requirements and quickly
design, implement and test them → rapid feedback + opportunity to modify or
adapt understanding of the requirements or design
o 4 phases, split into multiple iterations
▪ Inception → define the scope of the project
▪ Elaboration → plan the project, specify features, baseline architecture
▪ Construction → finish the construction
▪ Transition → hand over the project to end users
o Each phase overlaps with some elements of the waterfall model, but the balance
between them shifts as time passes
o UP best practices
▪ Develop software iteratively and involve users early
▪ Manage requirements
▪ Visually model software (UML)
▪ Verify software quality → test, code reviews, release in every iteration
▪ Embrace change
➢ Inception
o Envision the product scope, vision and business case. Upon completion, the
stakeholders have a basic agreement on the vision of the project and are able to
decide to continue or not. Duration: few weeks
o Artifacts
▪ Vision document – general vision of project, key features and constraints
▪ Initial list of use-cases – interaction with end users
▪ Initial project glossary – domain-specific lingo
▪ Initial business case – how will we make money
▪ Initial risk assessment – what might go wrong
▪ Project plan, showing phases and iterations – how will we move forward
▪ >1 prototype experiments
o Not about deciding how many weeks feature X will take to implement. You need
ballpark estimate (1 month or 1 year)
o Idea of which people will end up using the system => few carefully thought out use
cases, but not every possibility

2

, o Not about which GUI library to use but about if it will run on tablets, phones or in
the cloud
o Very hard to identify where the risks lie in any project. Bv changing limit on credit
card
➢ Elaboration
o Goals
▪ Analyze the problem domain, establish architectural foundation, develop
project plan and eliminate highest risks
▪ Mile high and inch deep view of the system
▪ Make architectural decisions
▪ Build executable architecture prototype, thereby eliminating critical risk, for
the central use cases developed in the inception phase.
▪ Start building prototype early, even is requirements not been finalized.
o Artifacts
▪ Use-case model
▪ Supplementary requirements capturing the non-functional requirements
▪ Software architecture description → includes organization and structure of
the major elements of the system; why the system is designed the way it is
▪ Revised risk list and revised business case
▪ A development plan for the overall project, including the coarse-grained
project plan, showing iterations and evaluation criteria for each iteration
o Results
▪ A stable vision of the software system and its architecture
▪ Minimized the risks that could cause the project to fail if you choose to
continue
▪ Better estimates for project costs and planning
➢ Construction
o Goal: develop and test a baseline product
o Upon completion, there should be a clear description of the product status and user
manuals. Tool should be ready to be deployed, even if not all features are fully
implemented
➢ Transition
o Deliver the first version of the software to
its users (beta testing, training users)
o Involves a lot of tuning, etc
o Goals
▪ Enabling users to use your
product
▪ Achieving consensus with all
stakeholders that the baseline
product is complete
▪ Iteratively refining the baseline
until the final product is implemented
➢ Activities
o UP: 6 distinct kinds of ‘engineering activity’
1. Business modeling → document existing business processes to establish a
common understanding between various stakeholders about how the
organization works

3
$8.54
Get access to the full document:

100% satisfaction guarantee
Immediately available after payment
Both online and in PDF
No strings attached


Also available in package deal

Get to know the seller

Seller avatar
Reputation scores are based on the amount of documents a seller has sold for a fee and the reviews they have received for those documents. There are three levels: Bronze, Silver and Gold. The better the reputation, the more your can rely on the quality of the sellers work.
IsabelleU Universiteit Utrecht
Follow You need to be logged in order to follow users or courses
Sold
136
Member since
4 year
Number of followers
86
Documents
34
Last sold
4 weeks ago

3.8

4 reviews

5
2
4
0
3
1
2
1
1
0

Recently viewed by you

Why students choose Stuvia

Created by fellow students, verified by reviews

Quality you can trust: written by students who passed their tests and reviewed by others who've used these notes.

Didn't get what you expected? Choose another document

No worries! You can instantly pick a different document that better fits what you're looking for.

Pay as you like, start learning right away

No subscription, no commitments. Pay the way you're used to via credit card and download your PDF document instantly.

Student with book image

“Bought, downloaded, and aced it. It really can be that simple.”

Alisha Student

Frequently asked questions