top of page
Search

Updated: Oct 6, 2019

Ex 2.1

Q: Suggest the most appropriate generic software process model that might be used as a bias for managing the development of the following systems. Explain your answer according to the type of system being developed:


The waterfall model (software life cycle)- plan driven process (plan and schedule eall of the processes before starting the software development)


Incremental Development- get feedback and evolve software (not critical)


Prototyping- try out design options and find out more about the problem


A system to control antilock braking in a car.


A: The waterfall model (software life cycle)- plan driven process (plan and schedule eall of the processes before starting the software development)


A virtual reality system to support software maintainanace

A: Incremental Development- get feedback and evolve software (not critical)


A university accounting system that replaces an existing system

A: The waterfall model (software life cycle)- plan driven process (plan and schedule eall of the processes before starting the software development)


An interactive travel planning system that helps users plan journeys with the lowest environmental impact.

A: Prototyping- try out design options and find out more about the problem


Collaborated with Chandler Long

6 views0 comments

Updated: Sep 10, 2019

HW7: response to all today's readings - find common concerns in the articles and reflect upon them.


All of these articles seems to be in unison about protecting the individuals security and privacy rights. I feel like this idea is strongly supported by the ACM Code of Ethics 2.9 "design and implement systems that are robustly and usably secure" and 1.6 "respect privacy." These are specifically applied to the aspects of motor vehicles. I feel like this is such a crucial topic as a large majority of us interact with vehicles that could be at risk of these attacks on a daily basis. I am glad to see not only an acknowledgement of these potential threats, but also a set of rules to guide us on this windy road.


I really like the "TRANSPARENCY.—Each motor vehicle shall pro- vide clear and conspicuous notice, in clear and plain lan- guage, to the owners or lessees of such vehicle of the col- lection, transmission, retention, and use of driving data collected from such motor vehicle" section of the Bill to protect consumers from security and privacy threats to their motor vehicles, and for other purposes. I feel like with this type of transparency we can not only see the changes being made, but have trust in what is happening since we are able to verify the changes.  The bill also set strict deadline for regulations to become effective which

I feel like follows directly along the line of test driven development standards.


The tire pressure monitoring system similarly exposed these security and privacy rights but they were extremely transparent about the risks of using their systems, as it is being deployed in the EU. Test driven development is based on the notion of short deliveries and high rate of feedback which is a great way to maintain security as one would be constantly testing their software as developments proceed. I think this is a great way to create challenging tests that will eventually pass with the correct amount of deliveries and feedback given.


I am extremely interested to see the future of Bills like this one and see the new ones that are created around the notion of self driving cars and how they are to handle complex decisions. There are so many ethical dilemmas that computers are not YET able to decipher from, but when that day comes I am excited to see what law enforcement has planned to regulate its use. I can understand how it can be difficult to create restrictions against a program when you are unaware of its true capabilities. This can only be truly seen when it is in complete action. Topics like this are why IT law has seemed so appealing to me at times. To be able to think about the legal implications of a program alongside the technical advancements must make decisions quite difficult. I am trying to educate myself on all of my legal technical boundaries. I think it would be of great help to have a class based entirely on IT Law. I have friends in the school of business that take business law so this would be the computer science equivalent of it. I find that this would be extremely useful for any area of study if one plans on taking it into the professional world. Not only should everyone know their rights as an individual but also their rights and limitations associated with their profession. I feel as though this was not fully emphasized until I have now gotten into my senior level computer science courses. 

0 views0 comments

Updated: Sep 10, 2019

Ex 4.5

Q: Using the technique suggests here, where natural language descriptions are presented in a standard format, write plausible user requirements for the following functions:


An unattended petrol (gas) pump system that includes a credit card reader. The customer swipes the card through the reader, then specifies the amount of fuel required. The fuel is delivered and the customer's account debited.


The cash- dispensing function in a bank ATM.


In an internet banking system, a facility that allows customers to transfer funds from one account held with the bank to another account with the same bank.


A: Here are the plausible user requirements....


When the user swipes the card through the reader the card could be approved or denied. In the case the card was denied the user must try a new card or exit the situation. If the card is approved, the user must then select debit or credit. Next the user would enter their pin code to prove their identity matches the one associated with the card being used. The user would then select regular or premium gas and proceeds to fill their tank by placing the gas nozzle in the gas tank. Once the tank is filled the users liking, they would extract the nozzle and place it in the gas pump. The user will then select if they would like a receipt or not and then exit the gas station.


When a user arrives at an ATM they will extract their ATM card from their wallet. The user will insert their card and select the preferred language. The user will then enter their pin code. The user will then select the transaction type and select the specific account they would like to complete this transaction from. If the transaction type was to withdraw cash they will select the increments they would like the cash to be in and receive the cash. The user will receive a receipt.


When a user opens the internet banking system they will navigate to their website. Next they will find the login page and enter their credentials (username and password). The user will then click on the account they would like to transfer funds out of. Next, the user will search for the "transfer money" button and click on it. The user will insert the desired account number in the "To" section. The user will fill out the frequency and amount boxes. The user will then hit continue and confirm the transaction leaving them with a receipt of confirmation.


 

Ex 4.6

Q: Suggest how an engineer responsible for drawing up a system requirements specification might keep track of the relationships between functional (what the system should do) and nonfunctional (execution constraints) requirements.


A: Make a white diagram with the general project functionality outlined in black. Insert the nonfunctional requirements in red in the areas they would come in to play in relation to the functional requirements.


 

Ex 4.7

Q: Using your knowledge of how an ATM is used, develop a set of use cases that could serve as a basis for understanding the requirements for an ATM system.


A:

Swiping the Card- The card could be either approved or denied.In the case the card was denied the user must try a new card or exit the situation.


Pin Code- The user will enter their pin code. If this code is incorrect the system will not proceed and will reject the card inserted. If the pin code is correct then the system will continue.


Deposit Cash- The user should make sure their cash bills are flat and insert them into the machine. The user would then select which account (checking or savings) they would like the cash to be deposited into.


Withdraw Cash- When the user is trying to withdraw cash from the ATM, the ATM should check if it has sufficient physical funds and if their virtual bank account has sufficient funds to complete the transaction.


Collaborated with Chandler Long

0 views0 comments
bottom of page