Software Engineering Assignment PDF

Title Software Engineering Assignment
Author jack barnes
Course software engineering
Institution Université de Bamenda
Pages 6
File Size 231.1 KB
File Type PDF
Total Downloads 81
Total Views 161

Summary

Software Engineering Assignment...


Description

Question 1 Data Flow diagrams A data-flow diagram (DFD) is a way of representing the flow of data of a process or a system (usually an information system). The DFD also provides information about the outputs and inputs of each entity and the process itself. A data-flow diagram has no control flow, there are no decision rules and no loops. Specific operations based on the data can be represented by a flowchart. It uses defined symbols like rectangles, circles and arrows, plus short text labels, to show data inputs, outputs, storage points and the routes between each destination.

Data-flow diagram of a restaurant software Entity-Relationship diagrams

An entity-relationship diagram (ERD) is a data modeling technique that graphically illustrates an information system’s entities and the relationships between those

entities. An ERD is a conceptual and representational model of data used to represent the entity framework infrastructure.

Entity-relationship diagram of a shop

Question 2 What is data modeling? Data modeling is a process used to define and analyze data requirements needed to support the business processes within the scope of corresponding information

systems in organizations i.e. Data modeling, is the process of visually representing what data the application or system will use, and how it will flow. Therefore, the process of data modeling involves professional data modelers working closely with business stakeholders, as well as potential users of the information system. Examples of data modeling Entity relationship model The Entity relationship data model is based on the entities consisting of the attributes and the relationship that exists among the entities. An entity contains a real-world property called attribute. The logical association between the different entities are known as the relationship among them. Relational model The most popular and extensively used data model is the relational data model. The data model allows the data to be stored in tables called relation. The relations are normalized and the normalized relation values are known as atomic values. Each of the rows in a relation is called tuples which contains the unique value. The attributes are the values in each of the columns which are of the same domain. Hierarchical model The hierarchical model is based on the parent-child hierarchical relationship. In this model, there is one parent entity with several children entities. At the top, there should be only one entity which is called root. Object oriented data model An object-oriented data model is one of the most developed data models which contains video, graphical files, and audio. This consists of the data piece and the methods in the form of system instructions. Network Data Model In the network data model, all the entities are organized in graphical representations. There may be several parts in the graph in which the entities can be accessed. Question 3

Pure waterfall life cycle

Phases of the pure waterfall life cycle Requirements: The first phase involves understanding what needs to design and what is its function, purpose, etc. Here, the specifications of the input and output or the final product are studied and marked. System Design: The requirement specifications from the first phase are studied in this phase and system design is prepared. System Design helps in specifying hardware and system requirements and also helps in defining overall system architecture. The software code to be written in the next stage is created now.

Implementation: With inputs from system design, the system is first developed in small programs called units, which are integrated into the next phase. Each unit is developed and tested for its functionality which is referred to as Unit Testing.

Integration and Testing: All the units developed in the implementation phase are integrated into a system after testing of each unit. The software designed, needs to go through constant software testing to find out if there are any flaws or errors. Testing is done so that the client does not face any problem during the installation of the software. Deployment of System: Once the functional and non-functional testing is done, the product is deployed in the customer environment or released into the market. Maintenance: This step occurs after installation, and involves making modifications to the system or an individual component to alter attributes or improve performance. These modifications arise either due to change requests initiated by the customer, or defects uncovered during live use of the system. The client is provided with regular maintenance and support for the developed software.

Question 4 Increasing demands:

As users use software to carry out their tasks, they discover that the available software are not more adequate for their ever growing needs and they need larger, more complex software to be delivered more quickly and for this, existing software engineering methods cannot cope and new software engineering techniques have to be developed to meet these new demands.

Question 5

 Prototypes usually can’t afford proper documentation, which makes it hard to maintain in the future.  Codes of prototypes usually don’t meet the organizational quality standard.  Ignorance of some non-functional requirements like user management, security, memory management, and performance may not be fulfilled.  The user interface may be minimal and not intuitive.  There may be no error detection or handling code.  Generally, prototypes are not viewed as high quality products, but just tools to aid the development process

b) This is because of the explicit risk management of Boehm’s spiral model. By spotting and handling the risks between planning and developing, many changes can be avoided in advance and plans for future changes can be made to improve change tolerance. Spiral model can be over expensive for most cases, that maybe the reason why it is not widely used. The other reason is that just like incremental development, lacking a complete specification before the end of the process makes it hard to work with management systems....


Similar Free PDFs