Software Engineering Methodologies

  1. There are various important goals a distributed system should have to tackle the expectations of so many people. All the goals should be fulfilled so that the system can meet the expectations of millions of people and the people can handle this system. First the most important thing that needs to keep in mind while proposing a distributed system is that the system should be user friendly and the interface should be easily understandable and it should support all the devices. There are millions of people who will be using this proposed distributed system, and every person is not from technical background, some people are from non-technical background also. The distributed system can be understandable by all the people to the non tech savvy people and non technical people. The interface of the proposed distributed system should support all the devices, because people carry different types of devices, all people cannot afford the same device, hence, the proposed system should be suitable to all the devices. The distributed system should connect all the people to resources very easily, people can access to resources with the help of distributed system. Apart from these, there are various goals of a distributed system;
  2. Connecting resources and users: the main purpose of the distributed system is to make all the resources easily accessible for the people and to share the resources among them in a controlled and in a manageable way. The resources can be anything, it can be the web pages, it can be the different websites, it can be the printers and many more things.
  3. Transparency: the most important purpose of the distributed system is transparency, the system should be transparent enough so that people can get to know about the location, about the access, about the migration, relocation, replication, concurrency, persistence and failure.
  4. Openness: the other important aim is openness, the system should offer the services in a very standard way that describes the semantics and the syntax of the services instances, the rules of computer network and also controls the frame, meaning, information, the meaning of messages sent and received.
  5. Scalability: There is an uncertain trend in the distribution is of larger system. This is an implication for the design of distribution file system. The algorithm works for the system that has 100 machines.
  6. Reliability: the other important aim is reliability; the distributed system is more reliable than the single processor system. If any machine breaks down then other machines can perform instead of that one which goes down.
  7. Performance: There are different types of metrics that can be used like response time, throughput, system utilization, and the amount of network capacity that is consumed.
  8. The good model to develop the software in the bank is iterative and incremental model that help in overcoming the issues and weaknesses of the other model. The first phase in this model is initiation, and the last phase of this model is deployment and it has cyclic iteration among them. The main idea behind using this model is that it is a repetitive model or cycles and that too in a very smaller period of time, it allows the software developers to take different advantages. It is also used in the application which shrink wrap and it is also useful for developing the large system that can be built by breaking the large system into smaller ones. It can also be used in the system that has separate elements like ERP system.

But the best model to develop this software is agile model, It is also based on the same approach that is iterative and incremental where needs and the solutions evolve through association among cross functional teams. There are various advantages of this model:

  1. It minimises the requirement of time in availing the some system features like in the software of bank, people like to load the page of the application instantly.
  2. It also helps in communicating face to face and it also provide inputs from the customer representatives leaves no space for the rough work, as in the bank application there should not be room for error as people directly download the app and pay the money to the other services through the bank. The pages of the application should be user friendly so that people can use it easily.
  3. The end result in the high quality of software and that too in the least possible time and clients also get satisfied. In the application of bank also, it is client who want to get satisfied with the app so that they recommend the app to the other users also.
  4. There are four main stages of testing that requires to be completed before a program can go down for the users to use; unit testing, integration testing, system testing and acceptance testing.

Unit testing: This is very first round of testing, the application is delivered to assessments that concentrate on particular units or elements of the software to measure if every one is fully functional or not. The amin goal of the unit testing is to measure to check the application functions of the program and its design. This testing is also known as white box testing. the biggest benefit of this testing is to check if every part of the program is working or not and it also allows the issues to be resolved as quickly as possible.

Integration testing: In this, the testers combine all the elements or units within a program and test them together in a group. This testing is carried out to find the defects of interface among the functions. This is done to check how efficiently all the units or elements are working together. It is also necessary to check if all the units are integrated together appropriately, if they are not integrated properly then they will be able to run.

System testing: it is the first level of testing that helps in completing the application as a whole tested. The main aim is to analyse whether the system is equipped and compiled with all the requirements and will the system meet all standards of the quality. This testing is also verifies that the application meets all the technical requirements, functional requirements and business requirements.

Acceptance testing : this is the final level of testing and it is carried out to measure if the system is ready to release or not. In this phase, the user will also check that the software is meeting all the business requirements and it is as per the expectations or not. Once this testing is done, the software is ready to release.

i). dom (f)= (1,2,3,4,5)

ii). ran(f)= (0, 1,3,7, 10)

iii). f domain_subtraction_op {3,4} = { (-2,4), (-1,4), (0,4), (1,0), (2,4) }

  1. iv) f range_subtraction_op {0,3} = { (0,-2), (0,0), (0,4), (0,-3), (0,7) }
  2. a. A = {1,2,3} and B = {a,b,c}

Assume f is defined as: { (1 → c), (1 → b), (2 → a), (3 → c)}

No f is not a function because function every element in the domain of function f have to pair with one element in the range and here 1 which is in the domain is paring with two elements of the range b and c. 

  1. Power set = 2 raise to power A

here is A= 3

so power set = 2 raise to the power 3=8

power set={ O, {4}, {5}, {6}, { 4, 5}, {4,6}, {5,6}, {4,5,6}

  1. A metric is the function of measurement and it is also a software quality metrics, its functions are depends on the software of data and output is the single integer value that can also be interprets in terms of degree that software processes for a given attribute that influences its quantity. There should be a list of quality of factors that is important for the Microsoft office software and these are the important factors;
  2. Productivity: productivity is depends how productive is the software, for example, we are talking about Microsoft office as this software is very productive because there are millions or more than millions of people are using this software for the documentation of the project. hence this software becomes very productive. This can be measured in terms of units produced, as in MS office there are different versions such I am currently using 2019 version and this version is better than the previous one so it is more productive, this version also addresses the issues that we face in older version.
  3. Correlation: the metric should clearly be correlated to the factor of quality. In the MS office, if quality is bad no people around uses it, but the quality of software is good so this is reason why more than million of people across the globe is using and the company who developed MS office keeps updating the quality so that people continuously using it in the future also.
  4. Consistency: the software should be consistent enough so that people get a habit of using it. It should not be happened with the software that software launches in the market one day and the next day the makers take it back and then next day it comes again, so this should not be accepted. If talk about MS office, this is a very consistent software as the company keeps updating but there never take it back from the market. It also provide consistency to the users.
  5. Predictability: it means M= FàY, if we know the value of Y we can predict the value of F also. So same applies to the Ms office also, like we can predict its results and outcomes.
  6. Reliability: The software should be very reliable and the company which is offering the software should be also reliable so that people can trust the company and can download the software in their systems. In case of MS office, the software is very reliable as we know it is an in-built software for some operating system, and companies of desktops, laptops, and other devices also trust MS office and then make this function in built, we know and the company know that MS office is very reliable, it does not harm the data of the system.
  7. Quality: The most important factor of metrics is quality, customers want quality in the software and this quality can be found in MS office because they keeps updating the software and keep providing the advance and new features.
  8. Independent path = E-n+2

here edges are 15 and nodes are 10 so 

independent path can be 15 - 10 +2= 7 

here 7 paths are independent paths. 

The paths which are independent:

Path 1: A , B, G, J

Path 2: A, C, G, J

Path 3: A,C, J

PAth 4: A, D, H

Path 5: A, E, J

path 6: A, F,I, J

Path 7: A, E, H

  1. There are different kinds of error that any software can come up with:
  2. Functionality error: Functionality is the way that the software intends to behave when the users using it. it can be if you are not expecting something and the software is doing that only, in this case, the fifth person is also using the game but the game is for four people.
  3. Communication error: The next error is communication error that occurs to end user from software. Some functions of the software are missing but the software is unable to communicate.
  4. Missing command error: This can be happening when there is an expectation command is missing. For example, if the four people are playing and they are unable to exit then may be there is some kind of command is missing and other possibility can be that there is some missing command in the game. This is the reason why the fifth people can also play the game.
  5. Calculation error: the error can be calculating error in the software, or may be the developer put bad logic in it, something type which is a mis match , or some coding errors, may be the developer code the function so that 5 user can login and 2 user can login with the same password and id and some functional call and issues can also be there in the game.
  6. Control flow errors: it is a software that describes the condition, like if first condition fulfils then only the software move to the next condition. Here also, it is possible that developer make an error and the fifth person is able to login and playing the game.

Remember, at the center of any academic work, lies clarity and evidence. Should you need further assistance, do look up to our Engineering Assignment Help

Get It Done! Today

Applicable Time Zone is AEST [Sydney, NSW] (GMT+11)
Upload your assignment
  • 1,212,718Orders

  • 4.9/5Rating

  • 5,063Experts

Highlights

  • 21 Step Quality Check
  • 2000+ Ph.D Experts
  • Live Expert Sessions
  • Dedicated App
  • Earn while you Learn with us
  • Confidentiality Agreement
  • Money Back Guarantee
  • Customer Feedback

Just Pay for your Assignment

  • Turnitin Report

    $10.00
  • Proofreading and Editing

    $9.00Per Page
  • Consultation with Expert

    $35.00Per Hour
  • Live Session 1-on-1

    $40.00Per 30 min.
  • Quality Check

    $25.00
  • Total

    Free
  • Let's Start

Browse across 1 Million Assignment Samples for Free

Explore MASS
Order Now

My Assignment Services- Whatsapp Tap to ChatGet instant assignment help

refresh