The Product and Process module set covers various aspects of the software development process or application development lifecycle. Various methods and techniques can be applied to the development lifecycle to make software better, faster, and of higher quality. By striving for continual quality improvement we hope to bring better applications to our end users and customers.
This module set comprises eight video modules.
Each module is shipped on a single DVD for viewing on a computer only (see technical requirements)..
The Software ProcessThis module address such questions as "what is a software process", and looks at a generic process model. We look at the process model landscape, with perscriptive models such as the Waterfall Model, Incremental models, and the Unified Process. Then Agile Models such as XP, Srum, DSM, and finally specialised process models such as Component-based Development and Model Driven Development. Software Process Improvement is also important, with Improvement Frameworks and CMMI in particular being further explored. Duration: 3 hours 58 minutes |
|
Requirements Analysis and ManagementThis module starts by introducing requirements and how they differ from Objectives. The Requirements Engineering process is explained, and then elaborated with requirements elicitation, documentation, analysis and validation. Once identified requirements need to be managed and aspects of change control are explored. Duration: 3 hours 30 minutes |
|
Process Development and RolloutThis module describes in detail the principles which underpin CMMI and Active Method Management. It takes a pragmatic view by focusing on the key areas of process definition, project planning, project execution and process improvement. Identifying opportunities and needs for automation and how Select Process Director can be used to achieve effective active method management. Ultimately, enabling organizations to achieve process maturity and in turn, high levels of accreditation in quality standards such as CMMI. Duration: 4 hours 12 minutes |
|
Agile MethodologyEveryone involved in software engineering work is driven by cost, schedule, and time to market. Agile software engineering combines a philosophy and a set of development guidelines. Duration: 3 hours 7 minutes |
|
Test-Driven DevelopmentTraditionally, programmers have designed their code, implemented it, and then tested it. Each of these phases were quite long, sometimes each phase took months. Testing especially was very long and often ran over its scheduled time which caused the whole project to be late. Sometimes as many bugs were introduced each day as were fixed, and the project could never get finished. Test Driven Development is the practice of writing an automated unit test to test your code BEFORE you write your code. This module explores how to do test driven development -with examples. Test driven development can be done in almost any language, and there are many different tools you could use, but for the sake of simplicity we do the whole demonstration in C#. Duration: 1 hours 53 minutes |
|
Software ReuseReusable components as a concept has been discussed since the early days of computers. There have been few commercially successful libraries of software components and many organizations have attempted to develop their own specific set of useful artifacts. Yet these have never fully given the benefits of shorter time to market, flexibility of construction, and faster response to changes in business operations. Barriers within the IT development groups and the software construction business in general are significant. But they can be overcome. New software development approaches such as component-based development, mean that component construction and reuse is back on the agenda; but IT management need to grasp the initiative. This module details a successful initiative for IT managers and developers to regain control over the development process and greatly increase the productivity of development groups. You will benefit from hearing topics such as:
Duration: 4 hours 9 minutes |
|
Commercial Software Product DevelopmentCommercial software product development is very much different from what people think of as application development. Typical application development involves creating an application or set of programs to perform a finite series of tasks, where the user may be guided through one of several paths in order to complete specific tasks. Many times, these tasks are related to the internal processes of an organization. Commercial software product development consists of building a software product with a broad range of functionality that can be sold commercially to external companies or individuals in either vertical or horizontal markets. The commercial software product development process evolves from various product ideas generated by a number of sources, both external and internal. Ideas for software products can come from existing customers, but in most cases from numerous other sources. Quite often, a market research study aimed at a new customer demographic will be the genesis for a new software product or product enhancement. Other product ideas may come from competitors, internal employees, lost customers or those who refused to buy previously, as well as from the marketplace in general. Duration: 4 hours 27 minutes |
|
Computer Aided Software EngineeringIn this video module we will be looking at aspects of Computer Aided Software Engineering, or CASE as it is more commonly known. We will look at the software lifecycle and how CASE tools fit into the development process. There are a number of different popular lifecycles, some of which promote the use of tools more than others, so we will look at the application of tools in these different approaches. Duration: 2 hours 44 minutes |
|