• Complain

Foster - Software Engineering a Methodical Approach

Here you can read online Foster - Software Engineering a Methodical Approach full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. City: Berkeley;CA, year: 2014, publisher: Apress, genre: Computer. Description of the work, (preface) as well as reviews are available. Best literature library LitArk.com created for fans of good reading and offers a wide selection of genres:

Romance novel Science fiction Adventure Detective Science History Home and family Prose Art Politics Computer Non-fiction Religion Business Children Humor

Choose a favorite category and find really read worthwhile books. Enjoy immersion in the world of imagination, feel the emotions of the characters or learn something new for yourself, make an fascinating discovery.

Foster Software Engineering a Methodical Approach
  • Book:
    Software Engineering a Methodical Approach
  • Author:
  • Publisher:
    Apress
  • Genre:
  • Year:
    2014
  • City:
    Berkeley;CA
  • Rating:
    5 / 5
  • Favourites:
    Add to favourites
  • Your mark:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

Software Engineering a Methodical Approach: summary, description and annotation

We offer to read an annotation, description, summary or preface (depends on what the author of the book "Software Engineering a Methodical Approach" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.

Software Engineering a Methodical Approach — read online for free the complete book (whole text) full work

Below is the text of the book, divided by pages. System saving the place of the last page read, allows you to conveniently read the book "Software Engineering a Methodical Approach" online for free, without having to search again every time where you left off. Put a bookmark, and you can go to the page where you finished reading at any time.

Light

Font size:

Reset

Interval:

Bookmark:

Make
Part A
Fundamentals
Fundamentals
This preliminary division of the course is designed to cover some fundamentals. The objectives are as follows:
  • To define and provide a rationale for software engineering as a discipline
  • To provide you with a wide perspective of computer software and its varied usefulness and applications
  • To discuss different approaches to software acquisition
  • To define the job of the software engineer in the organization
  • To discuss various tools used by the software engineer
The division consists of two chapters:
  • Chapter 1 Introduction to Software Engineering
  • Chapter 2 The Role of the Software Engineer
Elvis C. Foster 2014
Elvis C. Foster Software Engineering 10.1007/978-1-4842-0847-2_1
1. Introduction to Software Engineering
Elvis C. Foster 1
(1)
MA, USA
Welcome and congratulations on your entry to this course in software engineering. The fact that you are in this course means that you have covered several fundamental topics in programming, data structures, and perhaps user interface. You have been writing computer programs to solve basic and intermediate-level problems. Now you want to take your learning experience to another level: you want to learn how to design, develop and manage complex software systems (small, medium sized and large), which may consist of tens or hundreds of programs all seamlessly integrated into a coherent whole. You will learn all of these and more in this course, but first, we must start at the beginning. This chapter introduces you to the discipline of software engineering. Topics covered include the following:
  • Definitions and Concepts
  • The Organization as a System
  • Information Levels in the Organization
  • Software Life Cycle
  • Categories of Software
  • Alternate Software Acquisition Approaches
  • Software Engineering Paradigms
  • Desirable Features of Computer Software
  • Summary and Concluding Remarks
1.1 Definitions and Concepts
Computer software affects almost all aspects of human life. A study of the process of software construction and management is therefore integral to any degree in computer science, computer information systems, multimedia technology, or any other related field. Software systems are not created, and do not exist in a vacuum; rather they are typically created by individuals and/or organizations, for use by individuals and/or organizations. We will therefore start by defining a system, defining software, identifying the relationship between the two, and then showing how they both relate to the organization.
1.1.1 System
A system is a set of interacting, interrelated, interdependent components that function as a whole to achieve specific objectives. An effective system must be synergistic. The system usually operates in an environment external to itself. A system may also be defined as the combination of personnel, materials, facilities and equipment working together to convert input into meaningful and needed outputs.
Following are some fundamental principles about systems:
  • The components of a system are interrelated and interdependent.
  • The system is usually viewed as a whole.
  • Every system has specific goals.
  • There must be some type of inputs and outputs.
  • Processes prescribe the transformation of inputs to outputs.
  • Systems exhibit entropy, i.e., tendency to become disorganized.
  • Systems must be regulated (planning, feedback and control).
  • Every system has subsystems.
  • Systems exhibit a tendency to a final state.
As a personal exercise, you are encouraged to identify examples of systems in areas with which you are familiar. A good place to start is the human body.
1.1.2 Software
Software is the combination of program(s), database(s) and documentation in a systemic suite, and with the sole purpose of solving specific system problems and meeting predetermined objectives. Software adds value to the hardware components of a computer system. In fact, without software, a computer is reduced to nothing more than an electronic box of no specific use to most human beings. Also, it should not surprise you that computer software is a special kind of system. This course will teach you how to design, construct and manage such systems.
Software Engineering
Software engineering is the process by which software systems are investigated, planned, modeled, developed, implemented and managed. It also includes the re-engineering of existing systems with a view to improving their role, function, and performance. The ultimate objective is the provision or improvement of desirable conveniences and the enhancement of productivity within the related problem domain.
System transformation may take various paths, some of which may be:
  • Improving the internal workings of the system
  • Modifying inputs and outputs
  • Modifying the goals and objectives of the system
  • Redesigning the system
  • Designing and developing a new system based on existing problems
Steps in the Analysis Process
Before embarking on any major work in software engineering, a process of research and analysis takes place. This process may be summarized in the following steps:
Define the problem.
Understand the problem (system) the interrelationships and interdependencies; have a picture of the variables at work within the system; define the extent of the system (problem).
Identify alternate solutions.
Examine alternate solutions.
Choose the best alternative.
Pursue the chosen alternative.
Evaluate the impact of the (new/modified) system.
1.2 The Organization as a System
Traditionally, many software systems were created by organizations for use in organizations. To a large extent, this scenario still holds true. For the moment, let us therefore take a look at the organization, in the context of this approach. An organization is a collection of individuals that employ available facilities, resources and equipment to work in pursuit of a predetermined set of objectives. The organization qualifies as a system since it has all the ingredients in the definition of a system: people, facilities, equipment, materials and methods of work.
Every organization has certain functional areas (called divisions, departments, sections, etc.). Typical areas include finance and planning, human resource management (HRM), marketing, production and operations (or the equivalent), technical/manufacturing (or the equivalent). These are usually further divided into departments, units and sub-units. Traditionally, a data processing department/unit would be enlisted as a sub-unit of finance. However, more enlightened organizations are now enlisting information technology (IT) as a functional area at the senior management level, servicing all other areas.
Figure shows what a highly summarized organizational chart for a modern organization might look like. In tiny or small organizations, each unit that appears under the president or chief executive officer (CEO) may be a department. In medium-sized and large organizations, each unit under the president or CEO is typically a division, consisting of several departments and/or sections. It should also be noted that you are unlikely to find IT (or the equivalent) at the senior level in many traditional organizations, as managers still struggle with appreciating the scope and role of IT in the organization. However, in more progressive and forward-thinking organizations, you will find that IT is correctly and appropriately positioned at the senior level of the management hierarchy.
Next page
Light

Font size:

Reset

Interval:

Bookmark:

Make

Similar books «Software Engineering a Methodical Approach»

Look at similar books to Software Engineering a Methodical Approach. We have selected literature similar in name and meaning in the hope of providing readers with more options to find new, interesting, not yet read works.


Reviews about «Software Engineering a Methodical Approach»

Discussion, reviews of the book Software Engineering a Methodical Approach and just readers' own opinions. Leave your comments, write what you think about the work, its meaning or the main characters. Specify what exactly you liked and what you didn't like, and why you think so.