Home > Computer science essays > Miscellaneous software engineering Q & As

Essay: Miscellaneous software engineering Q & As

Essay details and download:

  • Subject area(s): Computer science essays
  • Reading time: 4 minutes
  • Price: Free download
  • Published: 15 September 2019*
  • Last Modified: 22 July 2024
  • File format: Text
  • Words: 905 (approx)
  • Number of pages: 4 (approx)

Text preview of this essay:

This page of the essay has 905 words.

1. Compare and contrast 2 SDLCs as presented in chapter 2

– Waterfall Model:

o It is fairly easy to explain as all the stages are well defined.

o All the stages of software development life cycle are carried out in series.

o We can detect the errors at each step by verifying everything before going to next step in process.

o It is hard to go back to any stage after finishing that step to correct the mistake, always have to start from the beginning.

o It can be used for smaller system.

– V-Model:

o It is easy to use and simple.

o This model follows simultaneous process.

o It is more successful as testing takes place at each step of life cycle which is also a major difference between Waterfall and V-Model.

o There is no clear path for problems if found any during testing face so that it’s hard to correct the software issues.

o It can be used for bigger system.

2. Review Software Engineering Body of Knowledge (in Course Resources folder), pick one section and prepare a one page summary, also post in Discussion Board

Requirements engineering Ch_4:

This is a most important phase of software development life cycle. It is a process of making sure that all the services are fulfilled that customer has requested in a system. System requirements are well defined and in full description that customer needs. Requirement engineering contains different kind of customer requirements including functional and non-functional, specification, validation, change, etc. There are two types of requirements; user and system. Users are also called stake holders, these are the people who is affected by the system in some way and so they do care how system performs. End users, system managers, owners are the examples of stakeholders.

System requirements are functional and non-functional. Functional requirements are mostly focus on output of each feature in software. It states what the system should do and should not do; services, reaction on certain input, behavior of system in particular situations, etc. are the examples of functionality requirements. Unclear functional requirements are problematic; therefore, they should be complete and consistent. Non-functional requirements are mostly focus on the system itself instead of its feature; timing constraints, development process. Standards, etc. These are required for ease of use of system.

Requirement engineering also include processes, elicitation, specification, validation, and change. Developer should check the system before handing it to users that all the requirements are met that customer wants to reduce the cost and time of both parties. They should check these criteria; validity, consistency, reviews, completeness, prototyping, realism, verifiability, test-cases, etc. Requirement changes with time, organization, area, priorities, budget, etc. So, developer should consider all these different situations of their customer before installation. Also, changes are always happening during and after the system development. Requirement management team is the one who manages these changes in requirement. They need to keep track of all these changes by proper planning and analysis. This team need to decide whether the system is worth implementing and meets the requirement of whole organization under current budget, available technical skills, and time.

3. Complete Exercise 2.1 on page 56

a. A system to control antilock braking in a car

b. A virtual reality system to support software maintenance

I think Waterfall development is the most efficient for “a” and “b”. In these two cases, proper planning before development is must require. Also, user wouldn’t be able to suggest in these cases as they have very little or zero understanding of these features. This means that users don’t know their requirements. These are real time systems, in which, proper step by step procedure should be followed and must be tested before implementation. Also, requirement doesn’t change in these models.

c. A university accounting system that replaces an existing system

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

I think Incremental development is the most efficient for “c” and “d”. These are considered to be medium to large soft wares as there are many criteria that user has to taking care of. These are user based soft wares where user knows their requirements and they can propose the changes anytime during software development. It is easier to make changes in this kind of soft wares at any point of SDLC.

4. Complete Exercise 2.2on page 56

Explain why incremental development is the most effective approach for developing business software systems. Why is this model less appropriate for real time systems engineering?

In Developing businesses, system requirements are likely to change during the development process; therefore, incremental development is the most effective in this case. In incremental development, user feedback is the key thing. Developers make changes in previous version of software as per user feedback and requirements. Incremental development can reduce the cost of implementation of requirement changes and This is very helpful to Developing businesses who have lower budget and requirement of frequent changes. Also, software can be developed very quickly and errors are easily identifiable in incremental SDLC which is beneficial for new businesses.

Incremental development is not compatible with real time systems as real-time systems have hardware components which are not incremental. Real time systems require prior planning as changes can’t made during each face of development. Also, incremental development is invisible and system design subject to change as new things are added which is nearly impossible in hardware based systems.

About this essay:

If you use part of this page in your own work, you need to provide a citation, as follows:

Essay Sauce, Miscellaneous software engineering Q & As. Available from:<https://www.essaysauce.com/computer-science-essays/2018-9-1-1535777891/> [Accessed 16-04-26].

These Computer science essays have been submitted to us by students in order to help you with your studies.

* This essay may have been previously published on EssaySauce.com and/or Essay.uk.com at an earlier date than indicated.