In: Computer Science
What is a software process model? Explain. Describe completely any two generic software process models with relevant diagrams using any two different examples of software applications (one for each model).
2. Draw a state-machine model (diagram) for the control software for the camera on your mobile phone. You can ignore the flash component.
3. Draw a sequence diagram for a student to register for a course for the Spring 2021 semester. Check academic and financial holds, pre-requisites and ensure that the catalog of courses is available for the student to check the CRN and name of the course and section.
4. Which software attributes are most critical for the following systems? Explain your reasoning for each attribute in detail. a. Software used to control a robotic arm to fill in prescriptions at a large pharmacy. b. Application similar to Mercy Connect, which you can use to register for courses, apply for and check financial aid, review transcripts, etc.
5. Create a complete list of software requirements (user, system, functional, non-functional) for a typical Metro North or Amtrak Ticket Machine system. If you are not familiar with Metro North or Amtrak, pick any train station Ticket Machine in your city.
ANSWERS
Q .1) What is a software process model? Explain. Describe completely any two generic software process models with relevant diagrams using any two different examples of software applications (one for each model) ?
ANSWER :
The Software Process Model :
A software process model is a specified definition of a
software process, which is presented from a particular perspective.
Models, by their nature, are a simplification, so a software
process model is an abstraction of the actual process, which is
being described. Process models may contain activities, which are
part of the software process, software product, and the roles of
people involved in software engineering.
Some examples of the types of software process models that may be produced are:
1. A workflow model: This shows the series of activities in the process along with their inputs, outputs and dependencies. The activities in this model perform human actions.
2. A dataflow or
activity model: This represents the process as a set of
activities, each of which carries out some data transformations. It
shows how the input to the process, such as a specification is
converted to an output such as a design. The activities here may be
at a lower level than activities in a workflow model. They may
perform transformations carried out by people or by
computers.
3. A role/action
model: This means the roles of the people involved in the
software process and the activities for which they are
responsible.
THE TWO GENERIC SOFTWARE PROCESS MODEL ARE :
i) Waterfall Model
ii) V Model
i) Waterfall Model =
The Waterfall Model was the first Process Model to be introduced. It is also referred to as a linear-sequential life cycle model. It is very simple to understand and use. In a waterfall model, each phase must be completed before the next phase can begin and there is no overlapping in the phases.
The Waterfall model is the earliest SDLC approach that was used for software development.
The waterfall Model illustrates the software development process in a linear sequential flow. This means that any phase in the development process begins only if the previous phase is complete. In this waterfall model, the phases do not overlap.
Example : Customer Relationship Management (CRM) = CRM means a combination of business strategies, software and processes that help build long-lasting relationships between companies and their customers.
This software ensures that every step of the interaction with consumers goes smoothly and efficiently in order to increase the overall profits. The software gathers customer data from multiple channels. Hence, CRM stores detailed information on overall purchase history, personal info, and even purchasing behavior patterns.
ii) V Model =
The V-model is an SDLC model where execution of processes happens in a sequential manner in a V-shape. It is also known as Verification and Validation model.
The V-Model is an extension of the waterfall model and is based on the association of a testing phase for each corresponding development stage. This means that for every single phase in the development cycle, there is a directly associated testing phase. This is a highly-disciplined model and the next phase starts only after completion of the previous phase.
EXAMPLE : SDLC MODEL : SDLC is a process followed for a software project, within a software organization. It consists of a detailed plan describing how to develop, maintain, replace and alter or enhance specific software. The life cycle defines a methodology for improving the quality of software and the overall development process.
Diagram of Waterfall model And V Model are Above in Pictures :