Before coding can take place for a software application, it is fundamental to define the what of the system. What are the requirements? One way to document requirements is to create use case diagrams. Consider an automated teller machine (ATM) system. Model the process of the various transactions that a customer can make at an ATM machine. Remember to include the authentication process and any exception transactions such as error handling. Once you have completed your diagram, describe in detail each use case in plain English (one paragraph for each).
Unified Modeling Language (UML) is a standard modeling tool for visualizing the design of a system in the field of software engineering. Convert the use case diagram (This was the Individual Project from Unit 1) into a UML diagram. Your UML diagram should include all the classes, attributes (data types must be specified), operations as well as the relationship types between the classes.
Collaborative software development tools (CSDTs) enable effective communication and collaboration on projects.
Click here for a description of extreme programming.
Research the buzzword antipattern and provide a definition for this term. Provide the following information in your answer.
Software maintenance involves a set of activities performed after the customer has accepted the final product.
Go to Energy.gov. In the search box type "Computer System Retirement Guidelines." This is an example illustrating the proper documentation for removal and disposal of application from all systems.
Based on your web or mobile app specified in Part 1, how is removal and disposal of the application communicated to the customer? Provide examples.
1. What are the 3 most critical principles that support the software development life cycle? Thoroughly explain your opinion
2. In the software engineering development process, requirements specification is the first step. During that step, you gather requirements that reflect the needs from both the users and stakeholders. From this list of requirements, you will differentiate two types of requirements: functional and nonfunctional.
3. What are the primary components that standards attempt to address? Thoroughly explain.
4. Review Software and Systems Engineering Standards on both ISO and IEEE Web sites.
5. What is your personality type according to this assessment? Report the results for each indicator.
6. Regardless of your results, your personality has the potential to serve as strength and a deterrent as a software engineer. List ways that you can uniquely contribute to your team as a result of your personality. What types of situations should you be wary of, given your personal profile?
7. John Doe contacts the Department of Software Engineering at his local college to seek recommendations to remove viruses and other malware from his computer. Professor Smith, an expert in this subject matter, answers Mr. Does questions and recommends the antivirus package "VirusAway" to address his computers issues. Professor Smith does not specify other products that would solve the same issues at a lower cost. He also does not state that the "VirusAway" is a product of his wifes technology venture development firm and that he has equity in the company.
In your opinion, from the eight principles (full version) in the Code, which one(s) are the most relevant to this scenario? Thoroughly explain.
8. Visit this Web site (http://www.onlineethics.org/cms/7680.aspx) to view real-life reports of software engineers who at some point chose to disregard their ethical obligations when developing software. Provide a real-world application when responding to each of the following questions:
9. Which do you prefer: Systems Engineering or Software Engineering? Explain your answer.
10. In software engineering, two common types of requirement analysis are verification and validation. Research the two types of requirement analysis. What are the commonly used techniques for each? Provide 2-3 techniques for each.