Implementation


 * Implementation**


 * One stage of the SDLC**



Not sure what we want to cover here. Do we want coding or app dev procedures and best practices? Here is a smattering of ideas and they spill over into testing, rollout and maintenance.

The National Implementation Research Network (NIRN) defines implementation as “a specific set of activities designed to put into practice an activity or program”

Ideally, this stage of implementation involves taking stock of existing resources—human, physical, and financial—for possible reassignment, as well as addressing resource gaps for the planned new program. Some questions to ask at this stage include:
 * Do new policies need to be written to reflect the upcoming changes?
 * Do existing staff members have the expertise to implement the identified solution or are new hires necessary?
 * Who will deliver the training, and when and where? How will staff and stakeholders be paid or compensated for attending the training?
 * How will the effectiveness of the training be measured and how will ongoing learning be supported?
 * Are our physical space, infrastructure, and equipment adequate?
 * Can additional funding streams be sought to cover the long-term costs?
 * What outcome measures will be watched and how will progress be tracked? What are the benchmarks? What metrics will be used?

actors found to be key supports to program implementation include:
 * professional development that is planned, intentional, and part of an ongoing, school-wide effort;
 * leadership, in which school leaders serve as role models, cheerleaders, and facilitators, and ensure that teachers have the needed resources;
 * organization and a structure that supports, encourages and recognizes change efforts; and
 * resources and support, internal and external, such as tech support, administrative leadership, buy-in from the community, and partnerships with other educational organizations.

Implementation, testing and documenting
[|Implementation] is the part of the process where [|software engineers] actually [|program] the code for the project. [|Software testing] is an integral and important phase of the software development process. This part of the process ensures that [|defects] are recognized as soon as possible. [|Documenting] the internal design of software for the purpose of future maintenance and enhancement is done throughout development. This may also include the writing of an [|API], be it external or internal. The software engineering process chosen by the developing team will determine how much internal documentation (if any) is necessary.Plan-driven models (e.g., [|Waterfall] ) generally produce more documentation than [|Agile] models.

[ [|edit] ] Deployment and maintenance
[|Deployment] starts after the code is appropriately tested, approved for [|release], and sold or otherwise distributed into a production environment. This may involve installation, customization (e.g. by setting parameters to the customer's values), testing, and possibly an extended period of evaluation.[// [|citation needed] //] Software training and [|support] is important, as software is only effective if it is used correctly.[// [|citation needed] //] [|Maintaining] and enhancing software to cope with newly discovered [|faults] or requirements can take substantial time and effort, as missed requirements may force redesign of the software.[// [|citation needed] //]

Testing
 * unit testing
 * QA testing
 * user acceptance testing
 * integration testing

Pilot Testing Training Rollout plan Maintenance