Software Engineering Module1
Software Engineering Module1
Module No. 1
I. Learning Objectives:
- Provide students an understanding of the software engineering
concepts.
While just about everyone uses a computer in some way, shape or form on a
daily basis, there are relatively few people who understand how vitally
important computer software is to the usefulness and functionality of even
simple devices. From very basic items such as a digital watch, to handy
innovations in cell phones, to the grand supercomputing behemoths that
manage things such as space shuttle launches, none of these machines
could function without the programming that gives them life.
If you have computer work that needs to be done, then there are at least
three components in play. The hardware is the first component which is
actually what most people think of when talking about computers. The
hardware includes the "box," the monitor, the keyboard, the mouse and any
other physical components.
The operating system software is the second of the three components. Which
operating system that runs on your computer will have a great deal to do
with which programs you are able to operate and also will make a difference
in how easy or difficult it is to use the computer overall. While Windows
computers are more prevalent, many people say that the Macintosh
computers are more user friendly because of the operating system.
The final of the three components of any computerized task is the specific
software program that has been written to handle the required work. This
relates back to the accounting program example which provided the specific
functions related to the accounting tasks that needed to be done. Without
these specific applications, a computer alone, even with a good operating
system, will not provide many solutions or much functionality.
Software Characteristics
we know that software is any computer program which can also be defined
as a set of instructions which are responsible for guiding the computer to
perform certain tasks. The following are the characteristics of software:
Software Components
Purpose
Tasks
Software Architectures
Software Architectures in the Essential Meta Model are used to capture the
relationships and dependencies that exist between the main software
components of an application. This short tutorial introduces Software
Architectures and describes how to capture them in Essential Architecture
Manager.
Purpose
Tasks
Purpose
Tasks
o Java JVM
o .NET framework
Specify the Technology Product that tells the model where this
Software Component comes from in the case of packaged solutions.
Specify the invocation protocol if appropriate
Specify the application functionality that this software component
provides by selecting the relevant Application Function Implementations.
Application Software
Application software (app for short) is a program or group of programs designed for
end users. Examples of an application include a word processor, a spreadsheet, an
accounting application, a web browser, an email client, a media player, a file viewer,
simulators, a console game or a photo editor.
1. SOFTWARE REQUIREMENTS
– is about the elicitation, analysis, specification, and
validation of requirements for software.
2. SOFTWARE DESIGN
– is about the process of defining the architecture,
components, interfaces, and other characteristics of a system or
component. This is called Software Architecture.
3. SOFTWARE DEVELOPMENT
– the main activity of software construction is the
combination of programming as known as coding, verification,
software testing and debugging.
5. SOFTWARE MAINTENANCE
– refers to the activities required to provide cost-effective
support after shipping the software product.
SOFTWARE ENGINEER is a person who applies the principles of software
engineering to the design, development, maintenance, testing and
evaluation of computer software.
Summary:
- In this module the student learned about the Internet, World Wide
Web, and associated technologies, including Web servers, Domain,
Domain Name Server. Also the essential introductory topics about
website development.