1/68
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
|---|
No study sessions yet.
Define Software:
A set of software artifacts that includes code.
Define Code:
A set of instructions to a device, possibly a computing device, to perform a desired set of functions.
Define Software artifact:
A unit of material, in the form of a document, presentation, or code, that is developed as a part of, or as a contribution to, the final solution to the users.
Define Method:
A formal procedure for producing a specific software artifact; The knowledge and skills applied to a specific activity
What are the three methods commonly used in software engineering?
Decomposition, Abstraction, and Synthesis.
Define Decomposition:
The breaking down of a complex problem into smaller pieces that can be better understood and solved.
Define Abstraction:
The hiding and postponing of the details to focus on the essentials.
Define Synthesis:
The creation of a component from smaller pieces.
Define Software engineering:
The art and science of developing and applying a body of knowledge and methods to the creation and support of software artifacts that will satisfy user requirements, including constraints such as cost, schedule, and usability.
Define Unified Modeling Language (UML):
A set of graphical languages used to model a system; it provides a set of notations for depicting the objects, relationships, and rules of a system.
Define Software development life cycle:
A set of transformations, starting with requirements, that converts each incoming software artifact into an artifact closer to the final result, until the final set of artifacts that satisfy the requirements are met.
Define Software product life cycle:
A period during which a software artifact is developed, supported, revised through multiple life cycles, and finally taken off the market.
Define Software project management:
The application of good management practices to the development and support of software. It ensures that appropriate processes and methodologies are chosen, internal structure is attained, and external product properties achieved.
T/F: Satisfying product requirements, budget, and schedule constraints is the essence of project management.
TRUE
What are the four major phases of software project management (POMA)?
Planning, Organizing, Monitoring, and Adjusting.
What does software project planning involve?
Developing a project plan that describes deliverables, attributes, schedule, resources, measurements, and risks.
T/F: Higher-level managers focus primarily on planning and organizing portions of POMA.
TRUE
T/F: Middle managers participate equally in all four categories of project management.
TRUE
T/F: Lower-level managers and project leaders focus mainly on monitoring and adjustment.
TRUE
Define Work Breakdown Structure (WBS):
A depiction of the project in terms of discrete pieces of work needed to complete it and the ordering of those pieces.
T/F: The WBS first considers the macro requirements of what needs to be delivered.
TRUE
What do the initial WBS artifacts generate?
A high-level set of tasks that will be sequenced and further broken into smaller tasks.
T/F: Each task or work unit should be refined into smaller subtasks until each can be performed by one individual.
TRUE
What is produced from the ordered tasks in a WBS?
An initial project schedule including tasks, dates, and effort.
List the activities performed as part of WBS development.
Examine deliverables.
Identify and list tasks.
Sequence tasks.
Estimate effort.
Estimate productivity.
Compute time per task.
Lay out schedule and resources.
T/F: The choice of activities and their sequencing depend on project size, complexity, and defined process and methodology.
TRUE
Define Sequence diagram:
A diagram that shows all tasks required to complete an activity and their order, including parallel tasks.
List the steps to construct a sequence diagram.
List deliverables.
For each deliverable, list required activities.
List subtasks.
Refine if necessary.
Define sequence relationships.
Depict them in the diagram.
T/F: WBS refinement should continue until each task can be assigned to one person and completed within two or three project status meetings.
TRUE
T/F: If a task takes less than one working day, time estimates should be stated in one-hour units.
TRUE
T/F: The software project team should count on about six hours of productive work per day.
TRUE
What are two common approaches to estimating task time in WBS?
Ask experienced team members for estimates.
Assemble technical experts to estimate each task.
What factors must be considered when assigning people to tasks?
Required skills, availability, and timing relative to other project needs.
Define Project milestone:
A significant event in a project that occurs at a specific point in time.
T/F: Milestone-based schedules are often used by higher-level management for large projects.
TRUE
What two WBS areas require extra care?
Task effort estimation and inclusion of all relevant tasks.
T/F: Task effort estimation is one of the least accurate and riskiest parts of the WBS process.
TRUE
T/F: The first iteration of the WBS, schedule, and milestones will most likely not be the final one.
TRUE
What are the two main goals of reviewing a project plan?
Ensure information is openly communicated.
Build understanding and commitment to the plan.
T/F: According to the 2009 CHAOS report, only 32% of projects succeed in delivering on time, within budget, and with full functionality.
TRUE
What percentage of projects failed according to the Standish Group’s 1995 report? How many face cost overruns?
31%; 53%
What are the three criteria that code must meet in a software project?
Execute properly per requirements, be maintainable and extensible, and be easily installable and usable.
T/F: Non-code artifacts are considered software only if directly related code is developed.
TRUE
What is the purpose of a requirements specification document?
To outline user needs and detail the desired functional behavior of the system solution to satisfy users’ needs.
T/F: Program size can be expressed in lines of code or function points.
TRUE
What are the main components of software engineering?
Process and methodologies
Desired internal product structure and properties
Desired external product properties
T/F: The sequencing and ordering of activities used to develop software artifacts are an important aspect of software engineering.
TRUE
What parameters influence task sequencing in a project?
Project size and complexity and the defined process and methodology.
T/F: The first iteration of a WBS schedule and milestones will likely be the final one.
FALSE
Why should the WBS plan be reviewed by stakeholders?
To communicate information openly and gain understanding and commitment to the plan.
Examples of software artifacts:
source doe as well as requirements specifications, design documents, user help texts, test cases, reference manuals, and other materials created to support the code
T/F: Requirements specifications for a system are sometimes presented as the sole software deliverable.
TRUE
T/F: The sequencing and ordering of the activities that are used to develop specific software artifacts are another important aspect of software engineering.
TRUE
List two well-known software development processes.
Waterfall, spiral
Define the spiral process
Takes every activity through four phases: planning, setting goals and alternatives, evaluation of alternatives, and developing activities.
T/F: Software projects are heavily dependent on people.
TRUE
T/F: A software development or support process is often treated as a guideline; often the organization can modify and adapt it as needed.
TRUE
T/F:Software is viewed as a logical entity that evolves through various stages, taking on different artifact forms.
TRUE
What is the general software product life cycle process?
Wish list evolves into SRS
SRS leads to different levels of design
Design is turned into an executable solution while software artifacts are tested and modified
Software is deployed in customers’ environments
Software moves through support phase
Software enters sunset phase
What does software project management ensure?
That the software artifacts evolve in a manner such that they:
meet all the product functional and other requirements.
are developed within the cost constraints.
are developed within the allotted schedule.
How do software engineering and POMA differ?
Software engineering begins with a development and support process and then applies management to that process.
POMA starts with management and applies software engineering’s domain-specific knowledge, (requirements solicitation or software measurement methods), at various stages along the way.
What does project organization involve?
Acquiring the various skilled individuals needed, defining a process and methodologies, obtaining a set of tools, creating a well-defined set of metrics for tracking
T/F: Software project organization seeks to construct a software development, support, and service organization based on the project plan.
TRUE
T/F: Project managers need to ensure that adequate financial funding has been set aside and will be made available in a timely manner.
TRUE
What does project monitoring involve?
Consistently and regularly collecting project status info, analyzing the data, representing and presenting the data for a defined set of reports, making projections and making recommendations based on the analysis of the data
What does project adjusting involve?
Rework on the requirements; adjustments in the project schedule, resources, or content.
T/F: The monitoring of projects ensures that the correct adjustments can be made at a relatively early stage in the development process.
TRUE
T/F: Before any project can be initiated, systems and software engineers need to identify the requirements of the project, interfaces to the project, and any other related systems or subsystems.