• Wrong document? Swap it for free
  • Written by students who passed
  • Immediately available after payment
  • Read online or as PDF
Sell
Where do you study
Your language
Document preview thumbnail
Preview 3 out of 19 pages
Exam (elaborations)

software engineering principles comp 410 study guide 2024

Document preview thumbnail
Preview 3 out of 19 pages

What is software engineering? a discipline whose aim is the production of fault-free software, delivered on time and within budget, that satisfies the client's needs. The software must be easy to modify when the user's needs change What is classical software engineering life cycle model? 1. requirements 2. analysis/specification 3. design phase 4. implementation phase 5. post-delievery phase 6. retirement what is modern view of maintenance software undergoes modifications to code and associated documentation due to a problem or the need for improvement or adaption, irrespective of whether this takes place before or after installation of the product Why is there no planning phase, testing phase, and documentation phase during software development? There is no separate planning phase. Instead, planning activities are carried out all through the life cycle. However, there are times when planning activities predominate. These include the beginning of the project (preliminary planning) and directly after the specification document has been signed off on by the client (software project management plan). 1. What are the advantages of the object-oriented paradigm? Objects can easily be reused in other programs, reducing time and cost of production and maintenance Once an Object is created, knowledge of its implementation is not necessary for its use Objects hide certain parts of themselves from programmers. This prevents programmers from tampering with values they shouldn't Development is made easier since objects in a product closely correspond to counterparts in the real world, leading to better quality software Separation of code makes maintenance quicker and easier, since only the code directly associated with the new feature is altered. This also reduces regression fault What are major differences between structured and object-oriented paradigm? The key difference between Structured Programming and OOP is that the focus of Structured Programming is to structure the program in to a hierarchy of subprograms while, the focus of OOP is to break down the programming task in to objects, which encapsulate data and methods. In structured paradigm, there is a sharp transition between the analysis phase and the design phase (what the product is to do vs how to do it) In OOP, objects enter the life cycle from the very beginning. Thus, it is an integrated approach and the transition from workflow to workflow is smoother than with the classical paradigm, reducing the number of faults introduced during development. What is the requirements phase? concept is explored and refined, and the client's requirements are elicited What is analysis/specification phase? client's requirements are analyzed and presented in specification document software project management plan describes software development in full detail Design phase? Architectural design: product I broken down into modules Detailed design: each module is designed

Content preview

software engineering principles comp
410 study guide 2024
What is software engineering?

a discipline whose aim is the production of fault-free software, delivered on time and within budget, that
satisfies the client's needs. The software must be easy to modify when the user's needs change

What is classical software engineering life cycle model?

1. requirements
2. analysis/specification
3. design phase
4. implementation phase
5. post-delievery phase
6. retirement

what is modern view of maintenance

software undergoes modifications to code and associated documentation due to a problem or the need
for improvement or adaption, irrespective of whether this takes place before or after installation of the
product

Why is there no planning phase, testing phase, and documentation phase during software development?

There is no separate planning phase. Instead, planning activities are carried out all through the life cycle.
However, there are times when planning activities predominate. These include the beginning of the
project (preliminary planning) and directly after the specification document has been signed off on by
the client (software project management plan).

1. What are the advantages of the object-oriented paradigm?

> Objects can easily be reused in other programs, reducing time and cost of production and maintenance
> Once an Object is created, knowledge of its implementation is not necessary for its use
> Objects hide certain parts of themselves from programmers. This prevents programmers from
tampering with values they shouldn't
> Development is made easier since objects in a product closely correspond to counterparts in the real
world, leading to better quality software
> Separation of code makes maintenance quicker and easier, since only the code directly associated with
the new feature is altered. This also reduces regression fault

What are major differences between structured and object-oriented paradigm?

The key difference between Structured Programming and OOP is that the focus of Structured
Programming is to structure the program in to a hierarchy of subprograms while, the focus of OOP is to
break down the programming task in to objects, which encapsulate data and methods.

,In structured paradigm, there is a sharp transition between the analysis phase and the design phase
(what the product is to do vs how to do it)
In OOP, objects enter the life cycle from the very beginning. Thus, it is an integrated approach and the
transition from workflow to workflow is smoother than with the classical paradigm, reducing the
number of faults introduced during development.

What is the requirements phase?

concept is explored and refined, and the client's requirements are elicited

What is analysis/specification phase?

client's requirements are analyzed and presented in specification document

software project management plan describes software development in full detail

Design phase?

Architectural design: product I broken down into modules
Detailed design: each module is designed

Implementation phase?

Unit testing: components undergo coding and testing
Integration: components of the product are combined and tested as a whole
Acceptance testing: by client when developers are satisfied that the product functions correctly
Product is then accepted by the client and installed on their computer

Post delivery phase?

Product is used to perform the tasks for which it was developed

Four Types of Maintenance

1. Perfective Maintenance: changes that the client thinks will improve the effectiveness of the product
(i.e. additional functionality, decreased response time)
2. Adaptive Maintenance: changes made in response to changes in the environment the product
operates in (i.e. new hardware/OS or new government regulations)
3. Corrective Maintenance: removal of residual faults while leaving specifications unchanged
4. Enhancement: changes to specifications and the implementation of those change

Schach uses the term product to mean a non-trivial piece of software in order to:

Schach uses the term product to mean a non-trivial piece of software in order to emphasize that it is the
end point of the process of software production.

Which term is used by Schach to denote an incorrect piece of software?

Schach uses the term fault to denote an incorrect piece of software in order to highlight a software
engineer as one who takes responsibility for his or her actions.

Besides code in machine-readable form software consists of:

, manuals


Software includes all the documentation that is an intrinsic component of every project. Schach

Explain the impact of Miller's law on software production.

Miller's Law states that at any one time, we humans are capable of concentrating on only approximately
seven chunks (units of information)


A typical software artifact has far more than seven chunks of information we are therefore limited on our
capability to handle the complexity of a software artifact.
Stepwise refinement help us handle the Miller's Law restriction on our human capabilities by
concentrating on the seven most important pieces of information at that time and holding off the next
seven aspects until we need to address them.

Describe the strengths of the iterative and incremental life-cycle model.

agile

Multiple opportunities to check software is correct and save money by detecting faults early
Robustness of the software is determined early.

Risks can be mitigated and reported to the client early in the life cycle, when only a small proportion of
the budget has been spent
We always have a working version of the software.

Describe Code-and-Fix Life Cycle Model

The product is implemented without requirements, specifications, or any attempt at design.

Instead, the developers simply throw code together and rework it as many times as necessary to satisfy
the client

Waterfall Life Cycle Model

No phase is complete until the documentation for that phase has been completed and the products of
that phase have been approved by the software quality assurance (SQA) group

Testing is not a separate phase to be performed only after the product has been constructed, nor is it to
be performed only at the end of each phase

Spiral Life-Cycle Model

Waterfall model with each phase preceded by risk analysis
Minimizing risk via the use of prototypes and other means
A proof-of concept prototype is a scale model constructed to test the feasibility of construction

Document information

Uploaded on
August 31, 2024
Number of pages
19
Written in
2024/2025
Type
Exam (elaborations)
Contains
Questions & answers
$13.49

Wrong document? Swap it for free Within 14 days of purchase and before downloading, you can choose a different document. You can simply spend the amount again.
Written by students who passed
Immediately available after payment
Read online or as PDF

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.
Lectsavvy
4.1
(17)
Sold
95
Followers
39
Items
3641
Last sold
1 week ago



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

Working on your references?

Create accurate citations in APA, MLA and Harvard with our free citation generator.

Working on your references?

Frequently asked questions