attachment_1 (5)

docx

School

Meru University College of Science and Technology (MUCST) *

*We aren’t endorsed by this school

Course

MISC

Subject

Information Systems

Date

Nov 24, 2024

Type

docx

Pages

7

Uploaded by ChefMaskWolf17

Report
ITEC3250 Assignment 8 100 pts Due 11/28 Dr. Jonathan Jenkins Requirements 1 Notes Number your responses as in the writeup, whether response is included or not To assist me in efficient scoring, use this document as a template, typing in your responses to each question. Do not modify the prompt text Your attention to detail in fully and concisely exploring and answering the question will determine your score Use your experience with the material and your own research to justify responses 2 This Assessment Covers Software Resilience, with Textbook Chapter 14 Software Reuse, with Textbook Chapter 15 Team Software Engineering Task: Test First Development Phase 2: Source code Submission 4 Part 1 4.0 What to Submit lastnameFirstinitialA8.docx
All submitted files must be named with your first and last name as shown Answer the F ollowing Q uestions 4.1 Software Resilience, with Textbook Chapter 14 1) Consider a software-based business you could run, based on your own career goals. 1) Identify the assets of the business that need protection against adverse events In a software-based business, intellectual property such as proprietary code and algorithms, customer data, and brand reputation are critical assets requiring protection. Robust cybersecurity measures safeguard against data breaches, while legal frameworks shield intellectual property, ensuring the business's resilience against adverse events. 2) Then, state and explain two resilience requirements you argue should be part of the software engineering work of the business Firstly, regular data backups are essential for resilience, ensuring rapid recovery from data loss or system failures. Secondly, incorporating modular design principles allows for adaptable software architecture, facilitating more accessible updates and enhancements and enhancing the system's resilience to evolving technological landscapes and business needs. 3) Finally, explain the organizational processes that you argue are needed to protect the assets of the business What should the people who the business do to protect the assets of the system? Implementing effective organizational processes is crucial for asset protection in a software-based business. This involves establishing strict access controls to limit data exposure, conducting regular security training for employees to mitigate human error, and instituting a comprehensive incident response plan to address and contain security breaches swiftly. Regular audits and assessments should also be conducted to identify and rectify vulnerabilities. 4.2: Software Reuse, with Textbook Chapter 15 TODO attach python oo class reuse example 1. You may want to review the python tutorial material with regard to python functions and objects/classes Also review carefully the python examples included with this assignment. Choose your own unique mobile device application idea, and... 1. Briefly explain what types of concept reuse you would do in developing the software for the application.
I leverage concept reuse by employing modular design principles and object-oriented programming (OOP) concepts to develop a mobile device application. For instance, I would create reusable classes for standard functionalities like user authentication, database interactions, and user interface components. This allows for efficient code reuse and maintenance, enhancing scalability and readability. Additionally, I utilize Python functions to encapsulate specific operations, promoting reusability and simplifying debugging. I can streamline development, minimize redundancy, and ensure a more flexible and adaptable codebase for my mobile application by adhering to these practices. 2. Briefly explain at least 3 examples of functions or objects you could reuse to perform specific tasks as part of the work of the application (source code not required) Firstly, I would implement a reusable authentication class to manage user login and registration processes. This class would encapsulate methods for user validation, session management, and password encryption, promoting secure and consistent authentication across the application. Secondly, I would create a modular database interaction object that can be reused for various data operations. This object would include methods for querying, updating, and deleting records, ensuring a standardized and efficient approach to managing application data. Lastly, I would develop a set of reusable UI components using object-oriented principles. These components, such as buttons, forms, or custom widgets, could be instantiated and configured quickly, maintaining a cohesive and visually appealing design throughout the application. I can streamline development, enhance code maintainability, and ensure a more robust and cohesive mobile application by reusing these functions and objects.
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
5 Part 2 Software Engineering Practical Component: Team Test- First Development 5.1 When to Submit Test case set deadline: Assignment 7 deadline Source code deadline: Assignment 8 deadline 5.2 What to Submit Posts in team test first development Stage 2 discussion forum, including attached code Implementation and Source Code Submission 5.4 Steps Notes See the references section for demonstration code and tips Steps 1. In keeping with Test-First development, bring all team members together as engineers to modify/add to your Python program code as necessary to pass the tests and completely fulfill your system requirements document. When you start implementation, it is expected that your program will fail all tests. Submit the completed source code in a zip file attached to a post in the discussion for this assignment part. 2. The submitted code must experience and pass all tests specified in the test case set submitted earlier for this assignment. 3. All team members must post in the applicable discussion forum to certify their acceptance of the source code submission’s completion (Reply only to your team mates posts) 4. Clear, organized, readable evidence must be provided demonstrating whether each test was passed or not (this could simply be the output of your tests). Any tests not passed will receive deductions.
To demonstrate that the source code passes the tests, choose one of the following options: (a) Use your automated tests in the code. The submitted program with tests must run without modification to demonstrate passing tests. See the Part 1 test case step, and the examples in the references in this document. (b) Record your running of tests with screenshots of code output and submit them within a Word document or Powerpoint presentation.
6 Submission For submissions to submission folders: Submit using the submission folder in D2L for this assignment For every assignment, create a new file to produce the submission Requirement: download or retrieve your submission after you submit it in order to check that your files are as you intend to be scored Resubmission is possible while the folder is open Latest scoreable submission is scored References: Cryptographic Services with Python Below is a list of python modules you may consider using for cryptographic purposes, If they are needed for your application. Python modules are most easily installed by using the pip command from your terminal/command line tool. Finding information about the module of interest is best done by searching the web or at pypi.org In Windows operating systems, the command line tool can be found by searching for ’command prompt’ with the operating system “start” menu search tool. Typing and running a command like pip install python-gnupg would download and install the module. Recommended: See also the information here: https://pypi.org/project/python-gnupg/ https://gnupg.readthedocs.io/en/latest/ • The GNU privacy guard (GPG) tool implements crypto services including encryption, decryption and key generation. It can be used outside of your application, if you need to simulate using cryptography without implementing it, or only use it for manual parts of the operation of your software system. Also see the tools linked from the URL, e.g. the Cleopatra tool that has a graphical user interface to manage encryption/decryption. This topic is covered in my Software Security course https://gnupg.org/ • The Python built in secrets module supports creating strongly random numbers that can be used as cryptographic keys. This topic is covered in my Software Security course. https://docs. python.org/3.6/library/secrets.html
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
• The Python built in hashlib module supports using hash functions. A hash function is designed to create a fixed length digital data item that is derived from a variable length input data item, so that it is very difficult to recover the original item, having the output item. This topic is covered in my Software Security course. https://docs.python.org/3.6/library/hashlib.html • Python.org page for cryptographic services. See the keyed hash module hmac also. The keyed hash function is used to produce a hash value of a data item, with a key as an additional input, to ensure that the hash value is influenced by the key, and therefore uniquely tied to the key. This can increase confidence that the hash value was generated by an entity who has a secure key https://docs.python.org/3/library/crypto.html?highlight=crypto