Written by students who passed Immediately available after payment Read online or as PDF Wrong document? Swap it for free 4.6 TrustPilot
logo-home
Exam (elaborations)

CSS 360 - Final Exam Review

Rating
-
Sold
-
Pages
34
Grade
A+
Uploaded on
21-04-2022
Written in
2021/2022

History of Software Engineering Correct answer- Introduced in the 1960s, because people were building large programs that were complex, over-budget, and behind schedule. Researchers decided that these problems must be systematically addressed, and it was born with the initial goals of building large software systems. Essential Software Problems Correct answer- Complexity: No two software parts are alike (if they were, they would be unified into one). Because each part of the software is unique, complexity does not grow on a linear scale with size. Conformity: Software must conform to the existing environment. Changeability: Software is under pressure to change constantly. Other manufactured items are infrequently changed, and all successful software must get changed. Invisibility: Software is invisible and un-visualizable. It is not inherently embedded into space, and communicating concepts about software is difficult. And accidental errors such as human error, poor interface, inadequate abstraction, and lack of training. Differences Between Software Engineering & Computer Science Correct answer- Both are concerned with computer software and everything related, BUT: SWE is focused on applications of concrete knowledge to engineering processes while CS is focused on both abstract and concrete knowledge. SDLC Models Correct answer- (Software Development Lifecycle Models) Frameworks defining the tasks performed at each step in the software development process. They provide structure to the development process. WBS Correct answer- (Work Breakdown Structure) A document and chart used as a means of identifying all the activities a project must undertake. Major Activity Correct answer- The top of the WBS chart, identifying the main task at hand. Every node after it is broken down into smaller tasks. Gantt Chart Correct answer- A time and activity bar chart that is used for planning, managing, and controlling major programs that have a distinct beginning and end. Requires that activities are defined before its use. Helpful for resource planning and scheduling, but does not show dependencies between tasks. Slack Time Correct answer- The time that an activity can be delayed without delaying the entire project; the difference between the late and early start times of an activity. Shaded in a Gantt chart. PERT Chart Correct answer- (Program Evaluation & Review Technique) A chart specifying the sequence of activities, time requirements, and critical path for performing the steps in a project. Requires all activities are listed and have estimated lengths. Critical Path Correct answer- In a PERT chart, this is the sequence of tasks that takes the longest time to complete. Prescriptive Model Correct answer- An SDLC model following a highly structured process, featuring an ordered approach to development and many planning phases. Promotes ordered approaches to development and project management. Also called the "plan-driven model." Examples: Waterfall, Spiral, Unified Process Agile Model Correct answer- An SDLC model that emphasizes continuous feedback and cross-functional teamwork. Simple to learn and featuring adaptive software processes, emphasizing unique aspects of software development. Examples: Extreme Programming (XP), Scrum, Kanban Agile Manifesto Correct answer- Individuals and interactions are prioritized over processes and tools Working software is prioritized over comprehensive documentation Customer collaboration is prioritized over contract negotiation Responding to changed is prioritized over following a plan Refactoring Correct answer- Modifying a program to improve its structure or make it simpler to understand. Objectives of SDLC Types Correct answer- Agile: Rapid Value (early product releases) Prescriptive: High Assurance (making sure the software is correct) Challenges of Agile Models Correct answer- - The success of the project is highly dependent on customers - Some personalities may not work well in a highly collaborative environment (individuals may prefer working alone) - Prioritization is hard, especially if you have multiple stakeholders - Simplicity takes a lot of time and effort - It is difficult for organizations to adapt to agile methods, because they are entrenched in the existing process Benefits of Agile Models Correct answer- Improved communication, awareness of other people's work, and less process overhead Overhead Correct answer- The ongoing administrative expenses of a business that cannot be attributed to the creation of a product or service, but are still necessary for the business to function. Scrum Correct answer- An agile SDLC model that helps teams work together. Encourages teams to learn through experiences, self-organize, and reflect on wins and losses to continuously improve. Sprint Correct answer- Short, time based periods in Scrum when a team works to complete a set amount of work. Sprint Planning Correct answer- An event in Scrum models defining what can be delivered in the upcoming sprint and how it can be achieved. Product Backlog Correct answer- The master list of work that the Scrum team needs to get done. Maintained by the product owner, it is a dynamic list of features, requirements, enhancements, and fixes that is the input for the sprint backlog. It is constantly revisited, reprioritized, and maintained by the product owner. Sprint Backlog Correct answer- The list of items, user stories, and bug fixes in the product backlog selected by the development team for implementation in the current sprint cycle. Increment Correct answer- The usable end product from a sprint, the team's version of "done" from each sprint. Also called the "sprint goal." Ceremonies of Scrum Correct answer- - Backlog grooming: maintenance and updating of the product and sprint backlogs, done by the product owner - Sprint planning (a long meeting) - Sprint (typically 2 weeks) - Daily Scrum: a short meeting that happens at the same time and place daily, to make sure everyone is on the same page, aligned with the sprint goal, and can get a plan out - Sprint review: the team gets together at the end of a sprint to view the demo of, or inspect, their increment. Product owner reworks the backlog and and decides whether or not to release the sprint. - Sprint retrospective: the team comes together to document and discuss what worked and didn't work in a sprint Product Owner Correct answer- The person responsible for the business value of the project and for deciding what work to do and in what order when using a Scrum method. Responsible for understanding company, customer, and market requirements, and prioritizes the work to be done by the team. Scrum Master Correct answer- The person in charge of a Scrum project, similar to a project manager. Coaches teams and businesses on the Scrum process and looks for ways to fine-tune the process. Scrum Team Correct answer- A group of developers, designers, and other associated personnel who get things done during Scrum sprints. They are tightly knit and usually 5- 7 members (per the "two pizza rule"). Main Functions of SDLCs Correct answer- To establish the order in which a project specifies, prototypes, designs, implements, reviews, tests, and performs activities, and establish the criteria used to determine when to proceed from one task to the next. Waterfall Correct answer- A prescriptive SDLC model featuring an orderly sequence of steps from the initial concept through the testing phases. At the end of each project phase, there is a review to determine whether the project is ready to advance to the next phase. If the review determines that it is not ready, it stays in the current phase until it is. This model is document-driven. Advantages of Waterfall Correct answer- - Documentation is carried between phases - Works well with product cycles that have stable product definitions and/or well- understood methodologies - Minimizes overhead planning because all the planning is done up front Disadvantages of Waterfall Correct answer- - It is hard to fully specify requirements at the beginning of a project before any work is done on it - It is not flexible - you have to fully specify requirements before you have any working product, and the goal then becomes achieving everything you can within the time and resources available rather than achieving what you said you would Code & Fix Correct answer- An SDLC model that would be Agile if it wasn't just done by one person. It starts with a general idea of what you want to build, and you then use combinations of (informal) design, code, debugging, and testing methodologies until you have a product that is ready to use. Advantages of Code & Fix Correct answer- - No overhead - you do not have to spend any time planning - Requires little expertise - if you've programmed, you've done it. Anyone can use it. Spiral Correct answer- A prescriptive SDLC model that is risk-oriented and breaks one project down into several mini-projects, with each one addressing one or more major risks until all major risks are dealt with. Risk Correct answer- The probability of occurrence for uncertain events and their potential for loss within an organization. Encompasses poorly understood requirements, or architecture, performance problems, etc. Spiral Steps Correct answer- - Determining objectives, alternatives, and constraints - Identifying risks and resolving them - Evaluating alternatives - Developing the deliverables for that iteration, and verifying they are correct - Planning the next iteration - Committing to an approach for the next iteration Advantages of Spiral Correct answer- As costs increase, risks decrease. The more money and time you spend, the less risks you are taking and the more risks you are tackling, which is exactly what you want for a rapid development project. Disadvantages of Spiral Correct answer- It is extremely complicated, and requires conscientious, attentive, and knowledgeable management as a result. Sashimi Correct answer- A modified version of the Waterfall SDLC model, which overlaps the phases of the "pure" waterfall model. Documentation Correct answer- All written documents and materials dealing with a product's development and usage. All software development products, whether created by a small team or a large corporation, require some form of it. Advantages of Sashimi Correct answer- - More overlap than "pure" Waterfall, suggesting that architectural and detailed design could be in progress before requirements engineering is fully complete - Reduced documentation compared to Waterfall, because if you can provide personnel with continuity then you do not need as much. Disadvantages of Sashimi Correct answer- - Milestones are ambiguous and it is difficult to track progress due to the levels of overlap - Performing parallel activities can lead to miscommunication and inefficiency Waterfall With Subprojects Correct answer- A prescriptive SDLC that is also a Waterfall modification. Breaks down the system into logically dependent subsystems, which makes it easier for you to create separate projects. Allows developers to perform tasks in parallel, but there are unforeseen interdependencies. Spiral Into Waterfall Correct answer- An extremely prescriptive SDLC model that is yet another Waterfall modification. Adds a risk-reduction spiral at the top of the Waterfall model to address requirements risk. Addresses requirements engineering and architectural design during the risk reduction phase. Evolutionary Protoyping Correct answer- An agile SDLC model where you develop the system's concept as you move through the project. Advantages of Evolutionary Prototyping Correct answer- - The most visible aspects of the system are developed first, and feedback is prioritized as a result - Useful when requirements change rapidly, customers are reluctant to commit to requirements, or neither you nor your customer understand application areas well Disadvantages of Evolutionary Prototyping Correct answer- - It is impossible to know how long it will take to create an "acceptable" product - It can easily become an excuse to do code & fix development Staged Delivery Correct answer- A prescriptive SDLC where you show software to the customer in successively refined stages - you know exactly what you will build before you set out to build it Advantages of Staged Delivery Correct answer- - Delivers software incrementally, in successive stages, which makes products easier to review - You put useful functionality into the hands of your customers earlier than if you deliver 100% at the end - Provides tangible signs of progress earlier in the project than less incremental approaches do Disadvantages of Staged Delivery Correct answer- It does not work well without careful planning on management and technical levels Kanban Correct answer- An agile SDLC that is meant to manage and improve work across groups by balancing demands with available capacity and handling bottlenecks. Kanban Board Correct answer- A visualization of the work items in the Kanban SDLC, to give participants a view of progress and process from start to finish. Advantages of Kanban Correct answer- - It is adaptable, and commonly used in combination with other methods and frameworks (usually Scrum) - The board is a good visual aid for the development team, capturing both work in progress and company policies through "done" rules - It directly manages workflow using the Kanban board, as each development step has a WIP limit - Problems are visible and evident immediately with this style of management, re- planning can be done consistently DSDM Correct answer- (Dynamic Systems Development Method) An agile SDLC model that has a fixed time frame and fixed resources, but variable functionality as a result. It is based on the "best" principles of implementation, but is not the best solution for every project. Principles of DSDM: Correct answer- 1. Active user involvement 2. Empowered team members 3. Frequent delivery 4. Criteria for accepted deliverables 5. Iterative and incremental development 6. Reversible changes during development 7. Requirements baselined at high levels 8. Collaborative and cooperative approach Timeboxing Correct answer- A technique used in DSDM as an alternative to the milestone. It is a time interval (4-6 weeks) where a set of tasks are meant to be achieved. MoSCoW Rules Correct answer- DSDM rules that make sure the project is on time and on budget, and the users are involved. The rules are as follows: - Must have: All features classified in this group must be implemented and if they are not delivered, the system would simply not work. - Should have: Features of this priority is important to the system but can be omitted if time constraints endanger. - Could have: These features enhance the system with functional items which can easily be reassigned to a later timebox. - Want to have: These features only serve a limited group of users and are of little value. Prototyping Correct answer- The process of building a model that demonstrates the features of a proposed product, service, or system. It is a good way to satisfy the principles of frequent delivery and incremental development, because it implements functionality first so that errors and difficulty can be discovered. Unified Process (UP) Correct answer- An SDLC model that maps out when and how to use the various UML techniques for object-oriented analysis and design. It is iterative, incremental, and architecture-centric. Rational Unified Process (RUP) Correct answer- An SDLC model consisting of four project lifecycle phases: inception, elaboration, construction and transition. A modification of Unified Process. Formal Model Correct answer- An SDLC model type used in critical systems where there is high risk. There are two subtypes. Cleanroom Development Correct answer- A formal model derived from chemical engineering, where defects are avoided by manufacturing "ultra-clean" atmospheres. It avoids defects using formal methods (precise mathematical models) and rigorous inspection processes to make sure errors are not overlooked. Transformation Model Correct answer- A formal model that transforms requirements into implementation through a series of steps. This can be manual, semi-automatic, or fully automatic. Addresses the difficulty of code modification and eliminates the cost and time spent in design, coding, and testing. It has a simplistic view - the formal requirement specification transforms into the formal low-level requirements specification, which transforms into high-level design, which is transformed into low-level design. With reusable components, low-level design is finally transformed into code.

Show more Read less
Institution
Course

Content preview

CSS 360 - Final Exam Review

History of Software Engineering Correct answer- Introduced in the 1960s, because
people were building large programs that were complex, over-budget, and behind
schedule. Researchers decided that these problems must be systematically addressed,
and it was born with the initial goals of building large software systems.

Essential Software Problems Correct answer- Complexity: No two software parts are
alike (if they were, they would be unified into one). Because each part of the software is
unique, complexity does not grow on a linear scale with size.

Conformity: Software must conform to the existing environment.

Changeability: Software is under pressure to change constantly. Other manufactured
items are infrequently changed, and all successful software must get changed.

Invisibility: Software is invisible and un-visualizable. It is not inherently embedded into
space, and communicating concepts about software is difficult.

And accidental errors such as human error, poor interface, inadequate abstraction, and
lack of training.

Differences Between Software Engineering & Computer Science Correct answer- Both
are concerned with computer software and everything related, BUT: SWE is focused on
applications of concrete knowledge to engineering processes while CS is focused on
both abstract and concrete knowledge.

SDLC Models Correct answer- (Software Development Lifecycle Models)
Frameworks defining the tasks performed at each step in the software development
process. They provide structure to the development process.

WBS Correct answer- (Work Breakdown Structure)
A document and chart used as a means of identifying all the activities a project must
undertake.

Major Activity Correct answer- The top of the WBS chart, identifying the main task at
hand. Every node after it is broken down into smaller tasks.

Gantt Chart Correct answer- A time and activity bar chart that is used for planning,
managing, and controlling major programs that have a distinct beginning and end.
Requires that activities are defined before its use. Helpful for resource planning and
scheduling, but does not show dependencies between tasks.

,Slack Time Correct answer- The time that an activity can be delayed without delaying
the entire project; the difference between the late and early start times of an activity.
Shaded in a Gantt chart.

PERT Chart Correct answer- (Program Evaluation & Review Technique)
A chart specifying the sequence of activities, time requirements, and critical path for
performing the steps in a project. Requires all activities are listed and have estimated
lengths.

Critical Path Correct answer- In a PERT chart, this is the sequence of tasks that takes
the longest time to complete.

Prescriptive Model Correct answer- An SDLC model following a highly structured
process, featuring an ordered approach to development and many planning phases.
Promotes ordered approaches to development and project management. Also called
the "plan-driven model."

Examples: Waterfall, Spiral, Unified Process

Agile Model Correct answer- An SDLC model that emphasizes continuous feedback
and cross-functional teamwork. Simple to learn and featuring adaptive software
processes, emphasizing unique aspects of software development.

Examples: Extreme Programming (XP), Scrum, Kanban

Agile Manifesto Correct answer- Individuals and interactions are prioritized over
processes and tools

Working software is prioritized over comprehensive documentation

Customer collaboration is prioritized over contract negotiation

Responding to changed is prioritized over following a plan

Refactoring Correct answer- Modifying a program to improve its structure or make it
simpler to understand.

Objectives of SDLC Types Correct answer- Agile: Rapid Value (early product releases)

Prescriptive: High Assurance (making sure the software is correct)

Challenges of Agile Models Correct answer- - The success of the project is highly
dependent on customers

- Some personalities may not work well in a highly collaborative environment
(individuals may prefer working alone)

,- Prioritization is hard, especially if you have multiple stakeholders

- Simplicity takes a lot of time and effort

- It is difficult for organizations to adapt to agile methods, because they are entrenched
in the existing process

Benefits of Agile Models Correct answer- Improved communication, awareness of other
people's work, and less process overhead

Overhead Correct answer- The ongoing administrative expenses of a business that
cannot be attributed to the creation of a product or service, but are still necessary for the
business to function.

Scrum Correct answer- An agile SDLC model that helps teams work together.
Encourages teams to learn through experiences, self-organize, and reflect on wins and
losses to continuously improve.

Sprint Correct answer- Short, time based periods in Scrum when a team works to
complete a set amount of work.

Sprint Planning Correct answer- An event in Scrum models defining what can be
delivered in the upcoming sprint and how it can be achieved.

Product Backlog Correct answer- The master list of work that the Scrum team needs to
get done. Maintained by the product owner, it is a dynamic list of features,
requirements, enhancements, and fixes that is the input for the sprint backlog. It is
constantly revisited, reprioritized, and maintained by the product owner.

Sprint Backlog Correct answer- The list of items, user stories, and bug fixes in the
product backlog selected by the development team for implementation in the current
sprint cycle.

Increment Correct answer- The usable end product from a sprint, the team's version of
"done" from each sprint. Also called the "sprint goal."

Ceremonies of Scrum Correct answer- - Backlog grooming: maintenance and updating
of the product and sprint backlogs, done by the product owner

- Sprint planning (a long meeting)

- Sprint (typically 2 weeks)

- Daily Scrum: a short meeting that happens at the same time and place daily, to make
sure everyone is on the same page, aligned with the sprint goal, and can get a plan out

, - Sprint review: the team gets together at the end of a sprint to view the demo of, or
inspect, their increment. Product owner reworks the backlog and and decides whether
or not to release the sprint.

- Sprint retrospective: the team comes together to document and discuss what worked
and didn't work in a sprint

Product Owner Correct answer- The person responsible for the business value of the
project and for deciding what work to do and in what order when using a Scrum method.
Responsible for understanding company, customer, and market requirements, and
prioritizes the work to be done by the team.

Scrum Master Correct answer- The person in charge of a Scrum project, similar to a
project manager. Coaches teams and businesses on the Scrum process and looks for
ways to fine-tune the process.

Scrum Team Correct answer- A group of developers, designers, and other associated
personnel who get things done during Scrum sprints. They are tightly knit and usually 5-
7 members (per the "two pizza rule").

Main Functions of SDLCs Correct answer- To establish the order in which a project
specifies, prototypes, designs, implements, reviews, tests, and performs activities, and
establish the criteria used to determine when to proceed from one task to the next.

Waterfall Correct answer- A prescriptive SDLC model featuring an orderly sequence of
steps from the initial concept through the testing phases. At the end of each project
phase, there is a review to determine whether the project is ready to advance to the
next phase. If the review determines that it is not ready, it stays in the current phase
until it is. This model is document-driven.

Advantages of Waterfall Correct answer- - Documentation is carried between phases

- Works well with product cycles that have stable product definitions and/or well-
understood methodologies

- Minimizes overhead planning because all the planning is done up front

Disadvantages of Waterfall Correct answer- - It is hard to fully specify requirements at
the beginning of a project before any work is done on it

- It is not flexible - you have to fully specify requirements before you have any working
product, and the goal then becomes achieving everything you can within the time and
resources available rather than achieving what you said you would

Written for

Course

Document information

Uploaded on
April 21, 2022
Number of pages
34
Written in
2021/2022
Type
Exam (elaborations)
Contains
Questions & answers

Subjects

$12.99
Get access to the full document:

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

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.
EvaTee Phoenix University
Follow You need to be logged in order to follow users or courses
Sold
5202
Member since
4 year
Number of followers
3567
Documents
55580
Last sold
2 hours ago
TIGHT DEADLINE? I CAN HELP

Many students don\'t have the time to work on their academic papers due to balancing with other responsibilities, for example, part-time work. I can relate. kindly don\'t hesitate to contact me, my study guides, notes and exams or test banks, are 100% graded

3.8

947 reviews

5
451
4
167
3
171
2
48
1
110

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

Working on your references?

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

Working on your references?

Frequently asked questions