Podcast
Questions and Answers
What is a key reason for continual consultation throughout the project lifecycle?
What is a key reason for continual consultation throughout the project lifecycle?
What should be included in the scope document when defining a project?
What should be included in the scope document when defining a project?
When examining competing products, what is NOT typically focused on?
When examining competing products, what is NOT typically focused on?
What is a non-functional requirement in a software project?
What is a non-functional requirement in a software project?
Signup and view all the answers
Why is it important to consider international factors when developing software?
Why is it important to consider international factors when developing software?
Signup and view all the answers
What should teams do when presenting project outlines after role-playing?
What should teams do when presenting project outlines after role-playing?
Signup and view all the answers
What is a primary goal of requirement specification in software projects?
What is a primary goal of requirement specification in software projects?
Signup and view all the answers
Which of these is an example of a functional requirement?
Which of these is an example of a functional requirement?
Signup and view all the answers
What is one limitation of the free plan offered by MockFlow?
What is one limitation of the free plan offered by MockFlow?
Signup and view all the answers
What is the purpose of an entity relationship diagram?
What is the purpose of an entity relationship diagram?
Signup and view all the answers
Which of the following is not a consideration during the implementation phase?
Which of the following is not a consideration during the implementation phase?
Signup and view all the answers
What does a 'perpetual license' mean in software purchasing?
What does a 'perpetual license' mean in software purchasing?
Signup and view all the answers
Which of the following factors is a common concern when using cloud computing?
Which of the following factors is a common concern when using cloud computing?
Signup and view all the answers
What is a major trend noted in recent software distribution methods?
What is a major trend noted in recent software distribution methods?
Signup and view all the answers
Which of the following is NOT mentioned as a big player in cloud computing?
Which of the following is NOT mentioned as a big player in cloud computing?
Signup and view all the answers
What should be agreed upon in writing with clients before starting serious development?
What should be agreed upon in writing with clients before starting serious development?
Signup and view all the answers
What is a crucial factor that must be evaluated when considering a cloud-based project?
What is a crucial factor that must be evaluated when considering a cloud-based project?
Signup and view all the answers
Which of the following is NOT a migration issue when moving customer data to a new system?
Which of the following is NOT a migration issue when moving customer data to a new system?
Signup and view all the answers
Which method is suggested for managing updates to a tool effectively?
Which method is suggested for managing updates to a tool effectively?
Signup and view all the answers
What international issues should be considered when migrating data?
What international issues should be considered when migrating data?
Signup and view all the answers
What example illustrates a potential system issue related to date handling?
What example illustrates a potential system issue related to date handling?
Signup and view all the answers
What deployment method allows for immediate updates across all users?
What deployment method allows for immediate updates across all users?
Signup and view all the answers
What process is used for detecting leaks in the pipeline system?
What process is used for detecting leaks in the pipeline system?
Signup and view all the answers
What is a disadvantage of automatic updates as seen in some software applications?
What is a disadvantage of automatic updates as seen in some software applications?
Signup and view all the answers
What happens when a sensor value is detected outside of acceptable parameters?
What happens when a sensor value is detected outside of acceptable parameters?
Signup and view all the answers
Which automatic update feature did Google Chrome implement effectively?
Which automatic update feature did Google Chrome implement effectively?
Signup and view all the answers
In the context of a bookshop, what is primarily used to identify the price of a book?
In the context of a bookshop, what is primarily used to identify the price of a book?
Signup and view all the answers
What component is NOT a part of the basic structure of programs as described?
What component is NOT a part of the basic structure of programs as described?
Signup and view all the answers
What purpose does wireframing serve in the design process?
What purpose does wireframing serve in the design process?
Signup and view all the answers
Which element is NOT considered part of a program's hierarchy as presented?
Which element is NOT considered part of a program's hierarchy as presented?
Signup and view all the answers
When a barcode is scanned at the point of sale, what does the system do first?
When a barcode is scanned at the point of sale, what does the system do first?
Signup and view all the answers
What is the primary function of prototypes in product design?
What is the primary function of prototypes in product design?
Signup and view all the answers
What is the purpose of beta testing?
What is the purpose of beta testing?
Signup and view all the answers
Which of the following backup strategies involves having duplicate cold backup systems?
Which of the following backup strategies involves having duplicate cold backup systems?
Signup and view all the answers
What is a key factor influencing the quality of user documentation?
What is a key factor influencing the quality of user documentation?
Signup and view all the answers
Which backup approach follows the 3-2-1 rule?
Which backup approach follows the 3-2-1 rule?
Signup and view all the answers
Which type of training is best for users who prefer in-person guidance?
Which type of training is best for users who prefer in-person guidance?
Signup and view all the answers
What could be a consequence of not having a strong data loss prevention strategy?
What could be a consequence of not having a strong data loss prevention strategy?
Signup and view all the answers
Which of the following statements about automated backups is true?
Which of the following statements about automated backups is true?
Signup and view all the answers
What type of testing ensures that the software is acceptable to the client before final deployment?
What type of testing ensures that the software is acceptable to the client before final deployment?
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.
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.