Software Development Consultation and Requirements
40 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

What is a key reason for continual consultation throughout the project lifecycle?

  • To schedule regular meetings with management
  • To identify problems early and ensure stakeholder input (correct)
  • To implement management’s preferences without feedback
  • To create a detailed project timeline
  • What should be included in the scope document when defining a project?

  • A list of functional and non-functional requirements
  • An analysis of the team’s emotional state
  • Explicitly listed 'in scope' and 'out of scope' items (correct)
  • A detailed marketing plan
  • When examining competing products, what is NOT typically focused on?

  • Idiosyncrasies of competing products
  • Fictional scenarios unrelated to the market (correct)
  • Weaknesses of the competing products
  • Strengths of the competing products
  • What is a non-functional requirement in a software project?

    <p>The reliability and performance standards of the software</p> Signup and view all the answers

    Why is it important to consider international factors when developing software?

    <p>Different languages, time zones, and conventions can complicate software functionality</p> Signup and view all the answers

    What should teams do when presenting project outlines after role-playing?

    <p>Save them for future reference and development</p> Signup and view all the answers

    What is a primary goal of requirement specification in software projects?

    <p>To define who the stakeholders are and their roles</p> Signup and view all the answers

    Which of these is an example of a functional requirement?

    <p>The program should allow users to create accounts</p> Signup and view all the answers

    What is one limitation of the free plan offered by MockFlow?

    <p>Limited to 3 pages</p> Signup and view all the answers

    What is the purpose of an entity relationship diagram?

    <p>To document a relational database system</p> Signup and view all the answers

    Which of the following is not a consideration during the implementation phase?

    <p>Client feedback</p> Signup and view all the answers

    What does a 'perpetual license' mean in software purchasing?

    <p>Buying once and using forever</p> Signup and view all the answers

    Which of the following factors is a common concern when using cloud computing?

    <p>Data control and access</p> Signup and view all the answers

    What is a major trend noted in recent software distribution methods?

    <p>Growth of software as a service (SaaS)</p> Signup and view all the answers

    Which of the following is NOT mentioned as a big player in cloud computing?

    <p>IBM Cloud</p> Signup and view all the answers

    What should be agreed upon in writing with clients before starting serious development?

    <p>Design of the project</p> Signup and view all the answers

    What is a crucial factor that must be evaluated when considering a cloud-based project?

    <p>Trust in the cloud provider</p> Signup and view all the answers

    Which of the following is NOT a migration issue when moving customer data to a new system?

    <p>Evaluating network security</p> Signup and view all the answers

    Which method is suggested for managing updates to a tool effectively?

    <p>Automatic online updates</p> Signup and view all the answers

    What international issues should be considered when migrating data?

    <p>Language and time zones</p> Signup and view all the answers

    What example illustrates a potential system issue related to date handling?

    <p>Y2K issue</p> Signup and view all the answers

    What deployment method allows for immediate updates across all users?

    <p>Web-based deployment</p> Signup and view all the answers

    What process is used for detecting leaks in the pipeline system?

    <p>Sensors monitoring flow and pressure</p> Signup and view all the answers

    What is a disadvantage of automatic updates as seen in some software applications?

    <p>Updates can consume bandwidth unexpectedly</p> Signup and view all the answers

    What happens when a sensor value is detected outside of acceptable parameters?

    <p>An alarm sounds, and an email is sent to managers</p> Signup and view all the answers

    Which automatic update feature did Google Chrome implement effectively?

    <p>Background updates without user intervention</p> Signup and view all the answers

    In the context of a bookshop, what is primarily used to identify the price of a book?

    <p>Scanning device reading the barcode</p> Signup and view all the answers

    What component is NOT a part of the basic structure of programs as described?

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

    What purpose does wireframing serve in the design process?

    <p>To outline the arrangement of elements for discussion</p> Signup and view all the answers

    Which element is NOT considered part of a program's hierarchy as presented?

    <p>User interfaces</p> Signup and view all the answers

    When a barcode is scanned at the point of sale, what does the system do first?

    <p>Queries the central computer for the price</p> Signup and view all the answers

    What is the primary function of prototypes in product design?

    <p>To demonstrate the product in action through interactivity</p> Signup and view all the answers

    What is the purpose of beta testing?

    <p>To identify bugs before wide-scale deployment.</p> Signup and view all the answers

    Which of the following backup strategies involves having duplicate cold backup systems?

    <p>Cold spares</p> Signup and view all the answers

    What is a key factor influencing the quality of user documentation?

    <p>The format preferred by users.</p> Signup and view all the answers

    Which backup approach follows the 3-2-1 rule?

    <p>3 copies in different locations.</p> Signup and view all the answers

    Which type of training is best for users who prefer in-person guidance?

    <p>Formal classes</p> Signup and view all the answers

    What could be a consequence of not having a strong data loss prevention strategy?

    <p>Loss of essential business records.</p> Signup and view all the answers

    Which of the following statements about automated backups is true?

    <p>They ensure backups are done consistently.</p> Signup and view all the answers

    What type of testing ensures that the software is acceptable to the client before final deployment?

    <p>User acceptance testing</p> Signup and view all the answers

    Study Notes

    Consultation

    • Consultation should occur continually throughout the software development lifecycle to identify problems early.
    • Honest and frank information from stakeholders should be encouraged without fear of retribution.
    • Create an environment for extracting valuable insights.

    Exercise: Identifying Scope, Stakeholders, and Requirements

    • Split into pairs, one customer, one developer.
    • Customer proposes an app/software project.
    • Developer must ask questions to define:
      • Scope Document: Explicitly list in-scope and out-of-scope items.
      • Stakeholders.
      • Requirement specification: Functional and non-functional items.
    • Reverse roles.
    • Save project outlines for future use.

    Project Research

    • Examine the current system your project will replace: strengths, weaknesses, idiosyncrasies.
    • Examine competing products: strengths, weaknesses, idiosyncrasies.
    • Examine your capabilities: what can you produce? What expertise can you afford to recruit?
    • Examine relevant literature: how are others addressing the problem?
    • Account for international factors:
      • Time zones
      • Languages
      • Date formats

    Requirements Planning

    • Turn your project scope into a detailed set of requirements for your engineering team.
    • Requirements are split into:
      • Functional: What will the program actually do?
      • Non-functional: Performance, security, usability, etc.

    Example Functional Requirements

    • Book Shop System:
      • Customer buys a book.
      • Salesperson scans a barcode.
      • Barcode is sent to the central computer.
      • Price is retrieved from the database.
      • Price is sent back to the point of sale computer.
      • Calculations are performed.
      • Transaction details are stored locally.
      • Receipt is printed.
    • Subsea Oil and Gas Leak Detection:
      • Sensors continuously monitor pipeline flow and pressure.
      • Data is processed on a computer.
      • If sensor values exceed acceptable parameters:
        • An alarm sounds on the computer.
        • An email is sent to managers.
        • Staff can configure the system.

    Structure Charts

    • Top-down approach to explain program organization.
    • Programs are composed of modules.
    • Modules consist of subroutines and functions.
    • Subroutines and functions are built with algorithms.
    • Algorithms are composed of lines of code.
    • Lines of code are made up of statements and data.

    Wireframing & Prototyping

    • Wireframe: outlines arrangement of textual and media elements.
    • Wireframing tools allow designers and clients to discuss and comment on sketches.
    • Prototype: shows your website or product in action. It's clickable.
    • Tools:
      • Adobe XD
      • Mockflow
      • Moqups
      • Lucidchart
      • Balsamiq

    Entity Relationship Diagrams

    • Used for documenting relational database systems.
    • Not a required diagram for the course, but recommended for Internal Assessment if creating a database.

    Client Sign-Off

    • Sign off on scope document AND design before starting serious development.

    Implementation

    • Aim: Build the software compliant with the design.
    • Considerations:
      • Technology stack
      • Migration issues
      • Deployment issues
      • Implementation issues

    Technology Stack

    • Perpetual License: buy once, use forever.
    • Rent (SaaS - Software as a service): Eg: Adobe Creative Suite, Microsoft Office 365
    • SaaS Model is becoming popular.
    • Cloud Computing:
      • AWS, Google Cloud, Microsoft Azure.
      • Concerns:
        • Control over data location.
        • Access to data.
        • Trust in cloud provider.
      • Elements to evaluate:
        • Security
        • Encryption
        • Privacy laws
        • Backups
        • Cost
        • Reliability

    Migration Issues

    • Maintaining compatibility of customer data during system migration.
    • Considerations:
      • International issues: languages, dates, currency, time zones
      • System issues: data types and limits (Eg: Y2K, Year 2038 problem)
      • Converting file formats
      • Validating data accuracy after conversion.

    Deployment Issues

    • Methods of software distribution:
      • App store
      • Website download and install
      • CD/DVD/USB
      • Cloud
    • Update management:
      • Online self-updating
      • Download and manually install
      • Distributing disks (less common nowadays)
    • Web based products update automatically (Facebook's downfall).

    Implementation Issues

    • Implementation/conversion methods.
    • Testing:
      • Software testing
      • User documentation testing
      • User training testing
      • Backup regime and restoration procedure testing

    Software Testing

    • Debugging: Testing as you code.
    • Automated testing: Software based automated testing.
    • Beta testing: Volunteers test software before widespread deployment.
    • User acceptance testing (UAT): Client accepts product as fit for purpose.

    User Documentation

    • Influences system implementation and success.
    • Options:
      • Textbook style user manuals
      • Help files
      • Online support (chat, forums)
      • Videos

    User Training

    • Options:
      • Self-instruction
      • Formal classes
      • Online courses
      • 1:1 coaching

    Backups

    • Data can be lost through:
      • Malicious activity
      • Natural disasters
      • Human error
      • Disk deterioration

    Data Loss Prevention

    • Determine the impact of a worst-case scenario on your business.
    • Strategies:
      • Failover systems
      • Redundancy
      • Removable media
      • Offsite/online storage

    Backup Strategies

    • 3-2-1 rule:
      • At least 3 copies
      • At least 2 different forms
      • At least 1 copy offsite
    • Other considerations:
      • Automated vs. manual backups
      • Full vs. differential backups

    The Cloud and Backups

    • Cloud is debatable as a backup.
    • Always live and available is a positive and negative.

    Studying That Suits You

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

    Quiz Team

    Related Documents

    Description

    This quiz focuses on the importance of continual consultation throughout the software development lifecycle, emphasizing the role of honest stakeholder communication. Participants will learn to identify project scope, stakeholders, and requirements through interactive exercises, while also examining existing systems and competing products.

    More Like This

    Software Design Document Overview
    10 questions
    Project Management Concepts Quiz
    170 questions
    Software Development Lifecycle Quiz
    41 questions
    Use Quizgecko on...
    Browser
    Browser