Project Management Basics Quiz

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson
Download our mobile app to listen on the go
Get App

Questions and Answers

What is the primary purpose of a schedule in project management?

  • To communicate final deadlines (correct)
  • To increase overall project costs
  • To ignore resource needs
  • To provide entertainment for the team

Sequences of activities in project management are done haphazardly without planning.

False (B)

What does WBS stand for in project management?

Work Breakdown Structure

Tasks should be broken down into sizes that are __________ to assign to one person.

<p>assignable</p> Signup and view all the answers

Match the following elements of schedule management with their descriptions:

<p>Define activities = Identify activities needed to complete WBS items Sequence activities = Determine the order of task execution Estimate activity resources = Identify what is needed to accomplish activities Estimate activity durations = Assess required effort for task completion</p> Signup and view all the answers

Which of the following is essential for a mental health case patient management system?

<p>Only authorized medical staff may access patient information (B)</p> Signup and view all the answers

The wilderness weather station is designed to collect data about weather conditions in urban areas.

<p>False (B)</p> Signup and view all the answers

Name one safety feature that a mental health case patient management system should offer.

<p>Warning about potentially suicidal or dangerous patients.</p> Signup and view all the answers

The _______ model is an example of a general process model in software development.

<p>waterfall</p> Signup and view all the answers

Match the following tools to their category:

<p>Diagramming = Documentation Tools Python = Programming Languages Eclipse = Integrated Development Environment JUnit = Testing Framework</p> Signup and view all the answers

What is NOT a phase in the software process?

<p>Documentation (D)</p> Signup and view all the answers

The design and implementation phase only focuses on defining the system's requirements.

<p>False (B)</p> Signup and view all the answers

What is one of the main activities involved in software processes?

<p>Specification.</p> Signup and view all the answers

Which of the following is a characteristic of web-based systems?

<p>They must be delivered incrementally due to complex requirements. (C)</p> Signup and view all the answers

Users purchase web software upfront rather than paying according to usage.

<p>False (B)</p> Signup and view all the answers

What is the dominant approach for constructing web-based systems?

<p>Software reuse</p> Signup and view all the answers

Web-based systems are complex __________ systems.

<p>distributed</p> Signup and view all the answers

What is a fundamental principle that applies to all types of software systems?

<p>Dependability and performance are important. (D)</p> Signup and view all the answers

Match the following terms with their descriptions:

<p>Cloud Computing = Provision of software services remotely Prototyping = Creating models for user feedback AJAX = Technology for rich web interfaces Managed Process = Systematic approach to development</p> Signup and view all the answers

Web interfaces are constrained by the capabilities of operating systems.

<p>False (B)</p> Signup and view all the answers

What type of system is an automobile control system classified as?

<p>ROM, No UI prototyping</p> Signup and view all the answers

What characterizes the agile method of software development?

<p>Stakeholders are involved in version evaluation. (B)</p> Signup and view all the answers

In agile development, outputs are predetermined before development begins.

<p>False (B)</p> Signup and view all the answers

What is a major challenge in agile methods concerning customer involvement?

<p>Keeping customers interested.</p> Signup and view all the answers

A plan-driven approach to software engineering is based around separate development __________.

<p>stages</p> Signup and view all the answers

Match the following elements to their descriptions:

<p>Agile method = Inter-leaved specification, design, and implementation Plan-driven development = Separate planned stages with defined outputs Iteration = Occurs within activities in development Stakeholders = Involved in version evaluation</p> Signup and view all the answers

Which of the following is a problem associated with agile methods?

<p>Maintaining simplicity requires more effort (C)</p> Signup and view all the answers

Agile methods do not support software maintenance.

<p>False (B)</p> Signup and view all the answers

What is one key issue regarding the maintainability of systems developed using agile approaches?

<p>Minimizing formal documentation.</p> Signup and view all the answers

What is a key feature of the Cleanroom Approach in software development?

<p>Reliability through formal methods (A)</p> Signup and view all the answers

Software testing in the Cleanroom process is conducted without statistical analysis.

<p>False (B)</p> Signup and view all the answers

What are the core activities of the software development ecosystem?

<p>Requirements, Design &amp; Implementation, Validation, Evolution</p> Signup and view all the answers

In the Cleanroom method, when quality standards are not met, development returns to the ______ phase.

<p>design</p> Signup and view all the answers

Match the following software development methodologies with their characteristics:

<p>Waterfall = Linear and sequential approach Spiral = Risk-driven model with iterative cycles Agile = Emphasizes flexibility and customer feedback RAD = Focuses on rapid application development</p> Signup and view all the answers

What occurs when an increment fails to meet quality standards in the Cleanroom Approach?

<p>Return to the design phase (D)</p> Signup and view all the answers

Project management focuses solely on the budget and does not consider time schedules or quality.

<p>False (B)</p> Signup and view all the answers

What is the definition of a project?

<p>A temporary endeavor to create a product, service, or result with a definite beginning and end.</p> Signup and view all the answers

What is one of the possible developer interpretations of the term 'search'?

<p>Search for a patient name in an individual clinic after choosing the clinic. (C)</p> Signup and view all the answers

Complete and consistent requirements are always achievable in practice.

<p>False (B)</p> Signup and view all the answers

What are non-functional requirements?

<p>Constraints on services, functions, or the overall architecture of the system.</p> Signup and view all the answers

The system shall implement patient privacy provisions as set out in ______.

<p>HStan-03-2006-priv</p> Signup and view all the answers

Match the types of requirements with their characteristics:

<p>Product requirement = Availability and uptime during working hours Organizational requirement = User authentication using health authority identity card External requirement = Compliance with patient privacy regulations Non-functional requirement = Constraints affecting the entire system architecture</p> Signup and view all the answers

Which of the following is an example of a non-functional requirement?

<p>The PMS shall be available to all clinics during normal working hours. (D)</p> Signup and view all the answers

Non-functional requirements are generally less critical than functional requirements.

<p>False (B)</p> Signup and view all the answers

What should a complete requirements document include?

<p>Descriptions of all facilities required.</p> Signup and view all the answers

Flashcards

Application types are not mutually exclusive

Different application types can share similar characteristics, and a system may not exclusively fit into just one category.

Fundamental principles of software engineering

Software engineering principles apply regardless of the specific development techniques used.

Managed development process

Developing software involves a structured process, often with specific steps for different application types.

Dependability and performance

Reliability, security, and speed are crucial for all types of software systems.

Signup and view all the flashcards

Software specification & requirements

Clear understanding and documentation of what the software should do is essential for successful development.

Signup and view all the flashcards

Software reuse

Reusing existing software components instead of writing new code can save time and effort.

Signup and view all the flashcards

The Web as a platform

The internet is a platform for various applications, and organizations are increasingly moving towards web-based systems.

Signup and view all the flashcards

Cloud computing

Cloud computing allows users to access software and resources remotely, without needing to install or own them.

Signup and view all the flashcards

Mental Health Case Patient Management System

A mental health case patient management system is a system used to maintain records of people receiving care for mental health problems. It is crucial that patient information is kept confidential and is disclosed only to authorized medical staff and the patients themselves.

Signup and view all the flashcards

What is a mental health case patient management system?

A system used to maintain records of people receiving care for mental health problems.

Signup and view all the flashcards

Privacy in Mental Health Systems

It is essential that patient information is confidential and is never disclosed to anyone apart from authorized medical staff and the patients themselves.

Signup and view all the flashcards

Safety in Mental Health Systems

Some mental illnesses cause patients to become suicidal or a danger to other people. Wherever possible, the system should warn medical staff about potentially suicidal or dangerous patients.

Signup and view all the flashcards

Wilderness Weather Station

A data collection system that collects data about weather conditions in remote areas.

Signup and view all the flashcards

Software Process

A software process involves a structured set of activities required to develop a software system. It includes abstract representations of these processes, such as general process models.

Signup and view all the flashcards

General Process Models

General process models describe the organization of software processes. Some examples include the 'waterfall' model, incremental development, and reuse-oriented development.

Signup and view all the flashcards

Software Specification

Defining what the system should do is called specification. It involves the process of developing a software specification.

Signup and view all the flashcards

Work Breakdown Structure (WBS)

Breaking down a project into smaller, manageable tasks that can be assigned to specific individuals.

Signup and view all the flashcards

Task Durations

Estimating the amount of time required to complete a task, considering factors like the required effort, available resources, and potential dependencies.

Signup and view all the flashcards

Sequencing Activities

Determining the sequence in which tasks must be completed, taking into account dependencies and potential bottlenecks.

Signup and view all the flashcards

Estimating Activity Resources

Identifying the resources needed to complete each task, such as personnel, equipment, and materials.

Signup and view all the flashcards

Schedule Management

Creating a detailed plan for managing the project schedule, including defining activities, sequencing them, estimating resources, and determining durations.

Signup and view all the flashcards

Cleanroom Approach

A software development approach emphasizing formal methods and statistical quality control, aiming for high reliability.

Signup and view all the flashcards

Incremental Implementation

A development process where software is built in increments, with quality checks after each increment.

Signup and view all the flashcards

Statistical Software Testing

Utilizing statistical methods to analyze test samples and estimate software reliability.

Signup and view all the flashcards

Project

A temporary endeavor with a defined start and end, aiming to achieve specific goals.

Signup and view all the flashcards

Project Management

The practice of planning and managing activities to meet project objectives within constraints like time, budget, and scope.

Signup and view all the flashcards

Software Development Methodology

A set of methods used to create and manage software, encompassing activities like planning, requirements gathering, design, implementation, and deployment.

Signup and view all the flashcards

Quality Assurance (QA)

The process of ensuring software meets defined quality standards, often involving reviews, testing, and audits.

Signup and view all the flashcards

Software Evolution

Maintaining and evolving existing software over time, including bug fixes, enhancements, and adapting to new requirements.

Signup and view all the flashcards

Rapid Software Development

A software development approach where specification, design, and implementation are interleaved and the system is developed in a series of versions, with stakeholder involvement in version evaluation.

Signup and view all the flashcards

Plan-Driven Development

A plan-driven approach focuses on predefined stages of development, with outputs planned in advance. It involves iteration within activities.

Signup and view all the flashcards

Agile Development

A software development approach where specification, design, implementation, and testing are interleaved and outputs are negotiated during development.

Signup and view all the flashcards

Agile Method Problem: Customer Interest

This method can be difficult to maintain customer interest due to their active involvement.

Signup and view all the flashcards

Agile Method Problem: Team Suitability

Agile methods require significant involvement from team members; if they are not suited for this, it can lead to problems.

Signup and view all the flashcards

Agile Method Problem: Change Prioritization

Prioritizing changes when multiple stakeholders are involved can be a challenge in agile environments.

Signup and view all the flashcards

Agile Method Problem: Maintaining Simplicity

Simplicity is a core agile principle, but maintaining it can require extra work.

Signup and view all the flashcards

Agile Method Problem: Contracts

Contracts can be challenging to manage with iterative approaches like agile, as they may need to be adjusted.

Signup and view all the flashcards

Ambiguous Requirements

When requirements can be understood in multiple ways, leading to different interpretations by developers and users.

Signup and view all the flashcards

Requirements Completeness

Ensuring requirements cover all features and functions needed for the system to work as intended.

Signup and view all the flashcards

Requirements Consistency

Ensuring there are no conflicting or contradictory statements in the requirements document.

Signup and view all the flashcards

Non-functional Requirements

Constraints on the system's performance, development process, standards, and more.

Signup and view all the flashcards

Availability Requirements

Non-functional requirements that dictate how the system should be available.

Signup and view all the flashcards

Authentication Requirements

Non-functional requirements that set standards for how users access and authenticate within the system.

Signup and view all the flashcards

Privacy Requirements

Non-functional requirements related to protecting user information and meeting relevant privacy regulations.

Signup and view all the flashcards

Non-functional Requirements & System Architecture

Non-functional requirements can influence the overall structure and design of a system.

Signup and view all the flashcards

Study Notes

Software Processes and Agile Methods

  • Software Engineering is the design, modification, or development of artifacts using appropriate theories and methods, while considering organizational and financial constraints.
  • Software includes computer programs and associated documentation. It can be developed for a specific customer or for a general market.
  • Software engineering is the discipline overseeing all stages of software production, from specification to maintenance.
  • Essential software attributes include maintainability, dependability, security, efficiency, and acceptability.
  • Software processes involve high-level activities such as specification, development, validation, and evolution.

Fundamentals of Software Engineering

  • Software engineering principles apply to all types of software systems.
  • Different types of systems require different tools and techniques.
  • Software engineers have societal and professional responsibilities, going beyond technical issues.
  • Professional societies provide standards of conduct.

Building Good Software

  • Developing good software requires more than just programming.
  • Essential skills include strong software management and personnel skills.
  • Modern software needs to consider ongoing technological advancements and changes in business needs.
  • Even well-designed systems can develop issues.

Software Product Categories

  • Generic products are marketed to any customer.
  • Customized products are commissioned to meet a specific client's needs.

Software Costs

  • Software costs often outweigh hardware costs, especially in long-term systems.
  • Maintenance costs tend to be greater than initial development costs for systems with an extended lifespan

State of Software and Software Engineering

  • Software underpins economies worldwide.
  • Dependence on software-controlled systems continues to grow in all areas.

Software Engineering - History

  • 1968- marked a turning point for addressing software project failures.
  • 1970-1980- period focused on techniques like structured programming and object-oriented development.

The Software Crisis

  • Software project failures are common due to factors like insufficient user involvement, late delivery, excessive costs.

Software Engineering Activities

  • Software specification is the first step in defining what the software system should do and what constraints surround its operation and development.
  • Software development is concerned with translating the requirements into code.
  • Software validation is the process of checking the software to ensure it meets the stated requirements.
  • Software evolution, or maintenance, is modifying the software in response to changing customer or market needs.

Ethical Issues in Software Engineering

  • Ethical responsibility requires more than just legal compliance.
  • Confidentiality, competence, respect for intellectual property, and awareness of computer misuse are key concepts in software engineering ethics.
  • The ACM/IEEE Software Engineering Code of Ethics governs practitioners' behavior.

Software Process Models

  • Waterfall model - distinct phases with sequential progression.
  • Incremental development – iterative development, with each iteration adding functionality.
  • Reuse-oriented development that utilizes existing components.
  • Spiral model - iterative approach where risks are analyzed at each step.
  • Agile methodologies emphasize flexibility in responding to change. Methods such as Scrum and XP are common agile approaches.

Tools Used by Software Engineers

  • Tools for documentation, diagramming, programming languages, integrated development environments, and testing frameworks are essential.

Application Types

  • Stand-alone, interactive, embedded control, batch processing, systems for entertainment, modeling and simulation, data collection, and systems of systems are different types of applications.

Software Evolution

  • Software is inherently flexible and can change as business needs and technical aspects evolve.
  • Although initial development and maintenance may appear distinctly different, they are increasingly considered parts of a similar process.
  • Software evolution is often a significant portion of a software's overall lifecycle cost and effort.

Plan-Driven and Agile Processes

  • Plan-driven processes are structured and plan the whole operation in advance. Agile processes tend to be more flexible to meet evolving requirements.

Software Evolution Processes

  • The evolution phases of a system or software product.
  • Considerations for changing environments and requirements.

Designing and Implementing Software

  • Architectures – the way software is divided into modules, components or components.
  • Models – ways of showcasing interactions among the elements of the system.
  • Object oriented design, a style that focuses on 'objects' as the key elements.
  • Design process – moving from initial ideas to an executable system through iterative refinement and review stages.
  • Design Concepts - the concepts of structuring a system (for example, modularity).

Software Testing

  • Testing – demonstrating that the software meets its requirements, a step by step verification process.
  • Unit testing – testing individual components to find initial defects.
  • Interface testing – testing exchanges of information and data between parts of the system.
  • System testing – testing the whole integrated system for its functionalities.
  • Regression testing – re-testing a program or software system after changes to confirm that the changes have not introduced defects to other parts of the system
  • Static testing, assessing for any structural issues
  • Test Planning - an organized method to ensure that every part of the process is well covered.

Testing Strategies

  • Testing strategies – plan of action.
  • Test-driven development – creating tests before implementing code.
  • Common testing faults – typical shortcomings.

Software Configuration Management (SCM)

  • Managing changes during the software development process.
  • Managing different versions and changes appropriately.

Software Project Management

  • Project management strategies for managing a project given different perspectives.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

More Like This

Use Quizgecko on...
Browser
Browser